问题
填空题
若有以下程序:
#include<iostream>
using namespace std;
class TestClass 1
public:
TestClass1()
X=0;
int x;
;
class TestClass2:virtual public TestClass1
public:
TestClass2()
x=10;
;
class TestClass3:virtual public TestClass 1
public:
TestClass3()
x=20;
;
class TestClass4:public TestClass2, protected TestClass3
;
int main()
TestClass4 obj;
cout<<obj.x<<end1;
return 0:
该程序运行后的输出结果是______。
答案
参考答案:T
解析: 主函数中定义TestClass4的对象obj。TestClass4虽然公有继承于TestClass2,但是x在其中为私有,所以无法访问。TestClass4保护继承于TestClass3,TestClass3中的x=20为公有成员数据,对象obj可以访问这个数据,即输出为20。