私がDerived*の派生Ptrを持っているとします。
私は、派生PtrからベースbaseObjectが欲しいです。
ベース baseObject = *derivedPtr; 適切な基本クラスのメンバー変数を使用して baseObject を作成しますか?
ありがとうございました
私がDerived*の派生Ptrを持っているとします。
私は、派生PtrからベースbaseObjectが欲しいです。
ベース baseObject = *derivedPtr; 適切な基本クラスのメンバー変数を使用して baseObject を作成しますか?
ありがとうございました
Derived* obj = new Derived;
base objOne = (*obj) ; // Object slicing. Coping only the Base class sub-object
// that was constructed by eariler statement.
これを実現するには、動的キャストを使用できます。
例えば
Base* baseObject = dynamic_cast<Base*>(derivedPtr);
はい。派生クラスからすべてをスライスするだけなので、これは実際には「スライス」と呼ばれます。