C++相談室 part34
■ このスレッドは過去ログ倉庫に格納されています
0153デフォルトの名無しさん
NGNG// 省略
};
class B{
// 省略
};
class C : public A, public B{
// 省略
};
ポリモフィズムの事なんですが、
A* a = new C;
は、期待どおりの動作をし、
B* b = new C;
は、期待している動作をしてくれない、
(つまり、多重継承の場合、ポリモフィズムにできるのは1つ目に継承したクラスへのポインタだけ)
というような事を、以前、本かサイトで見た(読んだ)ような気がするのですが、
調べなおしてみても、どうもそのような事が書いてある部分を見つけられず、
以前見た(読んだ)と思っているのは、ただの勘違いのような気がしてきました。
B* b = new C;は可能か不可能か教えてください。
更に、
class D{
// 省略
};
class E : public C, public D{
// 省略
};
C* c = new E;
これは可能でしょうか?
お願いします。
■ このスレッドは過去ログ倉庫に格納されています