基本クラスと 2 つの派生クラスがあり、例のように、派生クラスのオブジェクトへのポインターを他のクラスの 1 つにコピーする必要があります。
class Base
{
public:
Base(const Base& other);
}
class Derived1 :public Base
{
public:
Derived1(const Derived& other): Base(other){...};
}
class Derived2: public Base
{
public:
Derived2(const Derived& other): Base(other){...};
}
main()
{
Derived 1 d1;
Derived2 d2(d1)
}
Derived 1 ti ベース (アップキャストが許可されている) から渡し、次に *dynamic_cast* ベースから Derived2 に渡して、コピー コンストラクターを呼び出そうとしましたが、うまくいきません。2 つの派生オブジェクト間で、両方のオブジェクトの Base 部分をコピーするだけです。