Есть ли в C++ аналог "class of" из Object Pascal-я?
class ICreator
{
public:
vritual void * Create = 0;
}
template<class T>
class Creator:
ICreator
{
public:
void * Create
{
return new T;
}
}
ICreator* creators[] = {new Creator<Class1>, new Creator<Class2>};
for (int i =0; i < count; ++i)
creators[i]->Create;
спасибо
Оставить комментарий
trobak
Хочется следующее: иметь массив типов (потомков некоторого класса, скажем TX и уметь для каждого элемента этого массива создавать экземпляр класса соответствующего типа. В Object Pascal-е (в Delphi я это могу делать примерно так:Как это реализовать на C++?