コンパイル時(または実行時)に認識されていないオブジェクトのクローンを作成する方法を検討しています。質問の正確な言い回しは、「任意のオブジェクトのクローンを作成できる関数を作成する」です。
- 不明なオブジェクトを関数に渡します。
- オブジェクトのディープコピーを返します。
リフレクションを使用して関数と変数を読み取り、次に新しいオブジェクトを作成してこれらの値を割り当てる必要があると思います。Type.GetType()を使用してタイプを検索し、新しいインスタンスを作成してから、この既知のオブジェクトのコピーコンストラクターを使用できます。しかし、特定のクラスに実装されるかどうか(Deep)、または質問がそのような解決策を求めているかどうかはわかりません(必要な結果が何であるかがわからないので役に立ちません!)。
これを達成するために、誰かが私を正しい方向に導き、クラス/インターフェースが必要であり、寛大であると感じている場合は擬似コードを教えてもらえますか?