両方のメソッドが仮想として宣言されている場合、呼び出される Method1() の両方のインスタンスが派生クラスの Method1() であってはなりませんか?
BASE と DERIVED が毎回呼び出されるのを見ています。面接のレビューを行っていますが、これが正しいことを確認したいと思います。xD
class BaseClass
{
public:
virtual void Method1() { cout << "Method 1 BASE" << endl; }
};
class DerClass: public BaseClass
{
public:
virtual void Method1() { cout << "Method 1 DERVIED" << endl; }
};
DerClass myClass;
((BaseClass)myClass).Method1();
myClass.Method1();
メソッド 1 BASE
メソッド 1 DERVIED