В Free Pascal Я могу создать класс класса, который создает объект из назначенного типа класса. Например:C++ Тип, который имеет тип класса
type
TBaseClass = class
end;
TBaseClassType = class of TBaseClass;
TFooClass = class(TBaseClass)
end;
TBarClass = class(TBaseClass)
end;
Теперь я могу объявить переменную:
MyClassType: TBaseClassType;
MyObject: TBaseClass;
И использование:
// This will create instance of object TFooClass
MyClassType := TFooClass;
MyObject := MyClassType.Create;
// ... and here of TBarClass
MyClassType := TBarClass;
MyObject := MyClassType.Create;
Как я могу сделать что-то подобное в C++? Как хранить тип класса в какой-то вар и создать объект из него (и называют его конструктор конечно)
С уважением
Вы ищете наследство. Вы должны получить хорошую книгу и, возможно, указать ее, или есть много учебников онлайн. Но для этого конкретного случая проверьте: http://www.tutorialspoint.com/cplusplus/cpp_inheritance.htm – stardust
Я знаю, как наследование на C++ работает, похожее на Free Pascal. Но посмотрите на «TBaseClassType = класс TBaseClass». Что такое эквивалент C++ этого объявления? – Dibo
@ Dibo, почему вы не начинаете с книги? –