问题 单项选择题

关于下面程序的说法,正确的是( )。 #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;把基类中的公有成员说明为子类中的公有成员,因而可以为子类对象引用。

选择题
单项选择题 案例分析题