さて、多くのポリモーフィズム スレッドが飛び交っていることはわかっていますが、まだこのような状況に遭遇したことはありません。
class Base {
public:
virtual void method1() {
cout << "BaseMethod1" << endl;
}
void method2() {
cout << "BaseMethod2" << endl;
}
};
class Derive: public Base {
public:
void method1() {
cout << "DeriveMethod1" << endl;
method2();
}
void method2() {
cout << "DeriveMethod2" << endl;
}
};
int main() {
Base* p = new Derive();
p->method1();
}
私をつまずかせているのは、派生クラスのメソッド1がメソッド2を呼び出すことです。Base クラスの method2 は virtual として宣言されていないため、どの method2 になるのでしょうか?
お早めにどうぞ!