假设我有两个类:
class base
{
int hello;
public:
base
{
hello=5;
}
void show()
{
cout<<hello;
}
};
class derived:public hello
{
int hello;
public:
derived()
{
hello=2;
}
show();
};
现在我想知道它会显示2或5吗?如果是的话那么为什么以及如何让它反过来呢?
答案 0 :(得分:2)
不,因为您有两个不同且独立的变量hello
。 derived
类中的那个&#34;覆盖&#34; base
类中的那个。
如果您希望它起作用,您只需要一个变量。
答案 1 :(得分:0)
简短的回答是,公共继承模拟是一个关系。派生类是基类。派生类的构造函数将隐式调用基类的构造函数。