首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下的运算符重载函数定义: double operator +(int i,int k){ return double(i+k);} 但定义有错误,对这个错误最准确的描述是( )。
有如下的运算符重载函数定义: double operator +(int i,int k){ return double(i+k);} 但定义有错误,对这个错误最准确的描述是( )。
admin
2017-06-16
36
问题
有如下的运算符重载函数定义:
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://jikaoti.com/ti/Wgt0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于虚函数的描述中,正确的是
有如下函数模板声明: template<typename T> TMax(T a,T b){return(a>=b)?a:b;} 下列对函数模板Max()的调用中错误的是( )。
下列关于成员函数特征的描述中,错误的是()。
函数模板:template<classT>Tadd(Tx,Ty){returnx+y;}下列对add函数的调用不正确的是()。
根据下面的程序,可以在主程序中使用的合法语句是( )。 #include <iostream> using namespace std; class Person{ int age; voidtest(){}
假定用户没有给一个名为MyClass的类定义析构函数,则系统为其定义的默认析构函数首部形式为______。
如果表达式--x/y中的“--”和“/”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为
存取指针所指的值时,采用的运算符是
如果定义了一个类myclass,则为myclass类对象以成员函数形式重载后++运算符的声明应该为( )。
树L中,度为1、2、3、4、5和6的节点个数为6、4、3、3、5、1,则L中叶子的个数是【】。
随机试题
单击Windows任务栏中的“开始”按钮,将鼠标指针移动到()命令,再单击它的级联菜单中的“MicrosoftWord”可启动Word。
滤过是指易化扩散是指
能润肠通便,富含油脂,治老人、虚人便秘多用的药物是()
成人末梢血白细胞计数正常参考值()。
中央分隔带纵向盲沟的反滤层材料可选择()。
免赔额是保险公司要求投保人根据其不同的损失,自负一定的责任,即由被保险人承担的损失额。关于建筑工程一切险的免赔额,下列说法正确的是( )。
下列犯罪嫌疑人、被告人中,哪个不适用取保候审?()
Researchersinvestigatingbrainsizeandmentalabilitysaytheirworkoffersevidencethateducationprotectsthemindfromthe
"Hightech"and"state-of-the-art"aretwoexpressionsthatdescribeverymoderntechnology.Hightechisjustashorterwayof
Questions29-33ReadingPassage3hassevenparagraphsA-G.ChoosethemostsuitableheadingsforparagraphsC-Gfromthelisto
最新回复
(
0
)