Clone()
これが私のクラスの実装です:
MyClass^ Clone(){
return gcnew MyClass(this->member1, this->member2);
}
今、私はから派生した約10のクラスを持っていますMyClass
。実装はいずれの場合も同じです。いずれの場合も実際のクラス名を使用して呼び出す必要があるため、gcnew
のほぼ同一の実装を10個作成する必要がありますClone()
。
Clone()
10個の派生クラスすべてにサービスを提供する基本クラスに単一のメソッドを作成する方法はありますか?
編集:オブジェクトの1つを介してクラスのコンストラクターを呼び出す方法はありますか?実際の派生クラスコンストラクターを呼び出す方法で。何かのようなもの:
MyClass ^obj2 = obj1->Class->Construct(arg1, arg2);
私はC++/ CLIでこれを行っていますが、他の言語からの回答も歓迎します。