Не могли бы вы помочь мне понять, почему я получаю следующий вывод?Ускорение и полиморфизм в C++
Z
код приведен ниже:
#include <iostream>
using namespace std;
class X {
public:
virtual void shout() { cout << "X"; }
};
class Y : public X {
public:
void shout() { cout << "Y"; }
};
class Z : public Y {
public:
void shout() { cout << "Z"; }
};
int main() {
Y *yz = new Z();
yz -> shout();
return 0;
}
Потому что 'shout' объявлен' virtual'. –