首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下的运算符重载函数定义: double operator +(int i,int k){ return double(i+k);} 但定义有错误,对这个错误最准确的描述是( )。
有如下的运算符重载函数定义: double operator +(int i,int k){ return double(i+k);} 但定义有错误,对这个错误最准确的描述是( )。
admin
2017-06-16
37
问题
有如下的运算符重载函数定义:
double operator +(int i,int k){ return double(i+k);}
但定义有错误,对这个错误最准确的描述是( )。
选项
A、+只能作为成员函数重载,而这里的+是作为非成员函数重载的
B、两个int型参数的和也应该是int型,而这里将+的返回类型声明为double
C、没有将运算符重载函数声明为某个类的友元
D、C++已经提供了求两个int型数据之和的运算符+,不能再定义同样的运算符
答案
D
解析
此题考查的是运算符的重载。C++语言规定,不能作为非成员函数重载的运算符有=、[]、()、—>以及所有的类型转换运算符,故选项A错误:运算符重载对返回值类型没有限制,故选项B错误;C++并不强制要求非成员重载的运算符一定是某个类的友元,所以C选项错误:题目中重载的“+”运算符的两个参数都是int类型,而C++已经提供了求两个int型数据之和的运算符+,编译器无法区分应该调用哪一个,所以应该选择D选项。
转载请注明原文地址:https://kaotiyun.com/show/jmAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若需要定义一个标识符常量,并且使得C++能够进行类型检查,则应在定义语句的开始使用保留字【 】。
派生类的构造函数的成员初始化列表中,不能包含( )。
若有下列定义及初始化语句: int i=100; int *ip=&i; int k=*ip; 并假设整型数i的地址为0x12345678,指针ip的地址为0x21000000,则k的值为( )。
下列关于成员函数特征的描述中,错误的是()。
若类A和类B的定义如下:classA{inti,public:voidget();//...};classB:A//默认为私有派生{intk;public
一个函数带有参数说明时,则参数的默认值应该在()中给出。
设有语句 int n,m; char a[5],b; cin>>n>>a>>m>>b; 为了分别将10和20分别赋给n和m,look赋给a,t赋给b,则正确的输入为
下列运算符中,在C++语言中不能重载的是( )。
随机试题
()测量设备的绝缘电阻时,必须先切断设备的电源。对含有较大电容的设备,必须先进行充分放电。
可以使用肠内营养的是【】
不是内翻缝合的是()。
善治脏腑湿痰的药物是
工程项目费用控制的步骤包括:①分析;②比较;③预测;④纠偏;⑤检查。其正确的顺序是()。
《建设工程施工合同》规定,提出索赔时,应有索赔事件发生时的有效证据。下列对索赔证据的要求不正确的是()。
项目各参与方沟通过程的五个要素是指沟通主体、沟通客体、沟通介体以及()。
[A]Marktheheadway[B]Celebratethelittlewins[C]Exerciseislikeaninvestment[D]Makegoodchoices[E]Cut
ResalePriceMaintenanceisthenameusedwhenaretaileriscompelledtosellatapricefixedbythemanufacturerinsteadof
It’ssummer.IntheUnitedStates,it’stheseasonofswimmingpools,barbeques,campingandroadtrips.Roadtripvacations
最新回复
(
0
)