C ++ to C # static_cast

Я пытаюсь преобразовать проект из C ++ в C #, но в версии C ++ используется следующий код:

std::list<PlayerBase*>& AllPlayers = AutoList<PlayerBase>::GetAllMembers();

А AutoList — это просто файл заголовка с

#ifndef AUTOLIST_H
#define AUTOLIST_H
#include <list>

template <class T>
class AutoList
{
public:

typedef std::list<T*> ObjectList;

private:

static ObjectList m_Members;

protected:

AutoList()
{
//cast this object to type T* and add it to the list
m_Members.push_back(static_cast<T*>(this));
}

~AutoList()
{
m_Members.remove(static_cast<T*>(this));
}

public:

static ObjectList& GetAllMembers(){return m_Members;}
};

template <class T>
std::list<T*> AutoList<T>::m_Members;

#endif

Итак, как я могу создать класс C #, который может сделать то же самое для меня, который выбирает все объекты типа класса: PlayerBase?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]