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