有如下类声明: class Base{protected: int amount; public: Base(int n=0):amount(n){}int getAmount()const{retum amount;}}; class Derived:public Base{protected: int value; public: Derived(int m,int n):value(m),Base(n){}int getData()const{return value+amount;}}: 已知x是一个Derived对象,则下列表达式中正确的是( )。
A. x.value+X.getAmount()
B. x.getData()一x.getAmount()
C. x.getData()一x.amount
D. x.value+X.amount
查看答案
下列关于c++流的描述中,错误的是( )。
A. cout>>’A’表达式可输出字符A
B. eof()函数可以检测是否到达文件尾
C. 对磁盘文件进行流操作时,必须包含头文件fstream
D. 以ios_base::0ut模式打开的文件不存在时,将自动建立一个新文件
如果派生类以proteCted方式继承基类,则原基类的proteCted成员和publiC成员在派生类中的访问属性分别是( )。
A. publiC和publiC
B. publiC和proteCted
C. proteCted和publiC
D. proteCted和proteCted
将前缀运算符“--”重载为非成员函数,下列原型中能正确用于类中说明的是( )。
A. DeCr&operator--(int);
B. DeCr operator--(DeCr&,int);
C. friend DeCr&operator--(DeCr&);
D. friend DeCr operator--(DeCr&,int);
有如下类定义: class MyBase{int k; public: MyBase(int n=O):k(n)}}int value()eonst{return k;}}; class MyDerived:MyBase{intj; public: MyDerived(int i):j(i)}}int getK()const{return k;}int getJ()const{return j;}}; 编译时发现有一处语法错误,对这个错误最准确的描述是( )。
A. 函数9etK试图访问基类的私有成员变量k
B. 在类MyDerived的定义中,基类名MyBase前缺少关键字public、protected或private
C. 类MyDerived缺少一个无参的构造函数
D. 类MyDerived的构造函数没有对基类数据成员k进行初始化