Free Pascal では、割り当てられたクラス型からオブジェクトを作成するクラスのクラスを作成できます。例えば:
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++で同様のことを行うにはどうすればよいですか? クラス型をいくつかの var に格納し、そこからオブジェクトを作成する方法 (もちろんコンストラクターと呼びます)
よろしく