2 spirityzw SpiritYzw 于 2017.08.30 10:14 提问

(newbee)基类共有数据改变,公有继承,派生类中该继承数据值是否改变?

如下题,为何输出两个1,而不是3,2

#include
using namespace std;
class A
{
public:
A(int x=0)
{
a=x;
}

int print() 
{
    return a;
}

int a;

};
class B:public A
{
public:
B(int x=0):A(x)
{

}

int print() 
{
    return  B::a;
}

};
int main()
{
A a(3);
B b(2);
cout<<a.print<<endl;
cout<<b.print<<endl;
return 0;
}

Csdn user default icon
上传中...
上传图片
插入图片