1

私はできる限り自分自身を明確にしようとします:)。ある種のインタープリターを実装したいのですが、クラスをオブジェクトとしてではなく、これらのクラスのインスタンスを構築するために使用できる青写真のように保存できるようにしたいと考えています。

これは例のプロップファイルです

[class]
   myClass

これはサンプルのパーサー関数です

Dictionary<String^,Type>^ parserios(String^ file)
{
     /*bla bla bla parsing and we get **Dictionary<String^,Type>^** thatholds string name of class and its blueprint*/
}

parserios関数の結果を保持するBaseClassOfSomeSort " classes "の静的辞書を作成します。

そして今関数を構築しています

BaseClassOfSomeSort^ constructFunct(String^ type, array<Object^>^ args)
{
     return gcnew BaseClassOfSomeSort::classes[type](args);
}

Type::GetType(String^) 関数を使用して、返された Type オブジェクトで gcnew を呼び出すだけで可能だと思っていましたが、残念ながらこの方法では実行できません。それで、何か方法はありますか?

4

0 に答える 0