单选题 设有以下定义和程序:
#include<iostream.h>
class TestClass1
{
public:
void show1()
{
cout<<"TestClass1"<<endl;
}
};
class TestClass2:TestClass1
{
public:
void show2()
{
cout<<"TestClass2"<<endl;
}
};
class TestClass3:protected TestClass2
{
public:
void show3()
{
cout<<"TestClass3"<<endl;
}
};
void main()
{
TestClass1 obj1;
TestClass2 obj2;
TestClass3 obj3;
}
则以下不合语法的调用语句是______。
【正确答案】 C
【答案解析】[解析] TestClass1为TestClass2的私有基类,所以派生类TestClass2中继承过来的show1()为私有的。TestClass3为TestClass2的受保护派生类。所以TestClass3定义的对象不能访问TestClass中的show1()。