私はいくつかの抽象基本クラスを継承する複数のクラス(BとCと言う)を持っています(Aとしましょう)。私は実際にクラスBまたはクラスCのオブジェクト(o1)を指しているクラスAへのポインタ(p1)を持っています。次にクラスAに別のポインタ(p2)を持っていて、別のオブジェクトo2)はo1と同じです。問題は、その時点で、私はどのタイプo1があるのか分からないということです。基本クラスへのポインタを持っているときにオブジェクトを複製しますか?
A* newObject() //returns pointer to A which actually points to an object of class B or class C
{
....
}
A * p1 = newObject();
A * p2 = //I want it to point to a new object that is the same as the object p1 is pointing to. How can I do that?
私はので、私は、遺伝的アルゴリズムを実装していると私は私がそれから突然変異したいクラスを制御する複数の種類を持っていることが必要です。そして何かが繰り返されると、私は子供を親と同じにして、子を突然変異させたいと思っています。これは、p2がp1と等しくないことを意味します。これは、親のコントローラも同様に変更するためです。
デザインパターン "プロトタイプ" を探します。オブジェクトを「クローン」する方法について説明しています。 – Klaus