问题
单项选择题
关于下面程序的说法,正确的是( )。 #include <iostream> using namespace std; class x {int a; public:x(){a=3;}int geta( ) {cout<<a<<endl; return a; } }; class y: x {int b; public:x:: geta;//Avoid result ( ) {b=geta ( )+8; cont<<b<<endl;} }; void main ( ) {y yy; //Byy. result( ); yy. geta( ); //C }
A.A行错误,应写成“x::geat()”
B.B行错误,应写成“y yy();”
C.C行错误,不能对私变量引用
D.没有错误,其输出结果为: 3 11 3
答案
参考答案:D
解析: 语句x::geta;把基类中的公有成员说明为子类中的公有成员,因而可以为子类对象引用。