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