问题
单项选择题
有下列程序: #include<iostream> using namespace std; class TestClass{ protected: TestClass(){cout<<’x’;} TestClass(char c){cout<<c;} }; class TestClassl:public TestClass{ public: TestClassl(char c){cout<<c;} }; int main(){ TestClass1 d1(’y’); retum 0; } 执行这个程序屏幕上将显示输出( )。
A.y
B.yx
C.xy
D.yy
答案
参考答案:C
解析:
程序中的类TestClass为基类,TestClass1为TestClass的派生类。由main主函数入手,定义TestClass1类型的对象d1,参数值为y。 TestClass1类继承TestClass,所以主函数中“TestClass1 d(’y’);”语句首先调用“TestClass1(char c){cout<<c;}”,然后调用基类中的 “TestClass(){cout《’x’;}输出x,最后执行“TestClass(char c){cout<<c;}”,输出y,即答案为“xy”。