首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下类定义: class MyClass{ public: MyClass(int d=0):val(d)+{} ________//运算符函数+的声明 private: int val; };
有如下类定义: class MyClass{ public: MyClass(int d=0):val(d)+{} ________//运算符函数+的声明 private: int val; };
admin
2020-12-21
25
问题
有如下类定义:
class MyClass{
public:
MyClass(int d=0):val(d)+{}
________//运算符函数+的声明
private:
int val;
};
若要使语句序列
MyClass X(2),Y(4),z;
z=7+y;
Y=x+3;
能够正常运行,横线处的声明语句应为( )。
选项
A、friendMyClass operator+(MyClass,MyClass);
B、friendMyClass operator+(MyClass&,MyClass&);
C、friendMyClass operator+(MyClass,MyClass&);
D、friendMyClass operator+(MyClass&,MyClass);
答案
A
解析
程序中MyClass类给出一个默认构造函数,形参d是整数类型,默认值为0,在成员初始化列表中使用形参d初始化val成员;语句序列中两个表达式:7+y和x+3说明加法运算符函数的两个操作数可以是整型,也可以是MyClass类型,如果是整型的话,需要使用默认构造函数将整数类型隐式转换成临时的MyClass类对象,此时赋给运算符函数时,就不可以使用引用类型了,所以选项B、C、D都是错误的,选项A是正确的,选项A中由于两个操作数都是在形参列表,所以只能将运算符函数定义为友元函数,而不能定义为成员函数,本题答案为A。
转载请注明原文地址:https://kaotiyun.com/show/Kdyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下说明 int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为9的表达式是
下列关于虚函数的说明中,正确的是
必须用一对大括号括起来的程序段是
若磁盘上已存在某个文本文件,其全路径文件名为d:\ncre\test.txt,下列语句中不能打开该文件的是
下列字符串中,正确的C++标识符是
在一个派生类的成员函数中,试图调用其基类的成员函数“void f();”,但无法通过编译。这说明( )。
关于函数重载,下列叙述中错误的是
下列关于模板形参的描述中,错误的是
下列关于类模板的模板参数的叙述中,错误的是()。
下列有关模板的叙述中,正确的是()。
随机试题
高度远视眼易出现
发生细菌性肝脓肿时,细菌侵入肝最主要的途径是
聚氯乙烯绝缘电力电缆(1~6kV)线芯允许长期工作温度65℃。()
在分析事故时,应从()入手,逐步深入到()原因,从而掌握事故的(),再分清主次,进行责任分析。
下列各项属于《合同法》调整的有( )。
上诉场景中,甲承包商的诉讼时效期间届满的时间是( )。诉讼时效,是指权利人在法定期间内,未向人民法院提起诉讼请求保护其权利时法律规定消灭其( )的制度。
下列属于电气防爆基本措施的是()。
根据资金需要量预测的销售百分比法,下列负债项目中,通常会随销售额变动而成正比例变动的是()。
某国的人口总数为1500万,劳动力人数为1200万,就业人数为900万,则该国失业率为()。
Ineedonemorestampbeforemycollection______.
最新回复
(
0
)