Это забавная задача, включающая множественное наследство в C ++ на основе проблемы, с которой я столкнулся недавно.
без фактического запуска кода ниже, можете ли вы предсказать, каким будет вывод двух операторов "std :: cout"? < /p>
#include
class CA {
public:
int a;
};
class CB {
public:
int b;
};
class CC : public CA {
public:
int c;
};
class CD : public CC, public CB {
public:
int d;
};
int main() {
CD d1;
d1.a = 5;
d1.b = 10;
d1.c = 20;
CC* c1 = (CC *)&d1;
CB* b1 = (CB *)c1;
CB* b2 = (CB *)&d1;
std::cout
Подробнее здесь: https://stackoverflow.com/questions/796 ... interested