構成から異なるクラスの作成を制御することはできますか?設定で制御可能な異なるクラスの作成を可能にすることはできますか?
言って、私はハードコーディングされてこれを行う機能を持っている:
BaseClass* getClassObject(int type)
{
switch (type)
{
case 1:
return new DerivedClass1();
case 2:
return new DerivedClass2();
default:
return 0;
}
}
は、ユーザーが単にデータを記入する必要がありますように、データ構造のいくつかの種類に制御を転送することが可能です関数の振る舞いを制御する構造体?
おそらくあなたは少し質問を明確にすることができます。 switch文の問題は何ですか?コンパイル時に型を知る必要があるという事実?整数(クラス名の文字列)とは違うものを渡したいのですか? –