首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下的运算符重载函数定义: double operator+(inti,intk){return double(i+k);} 但定义有错误,对这个错误最准确的描述是( )。
有如下的运算符重载函数定义: double operator+(inti,intk){return double(i+k);} 但定义有错误,对这个错误最准确的描述是( )。
admin
2013-05-30
28
问题
有如下的运算符重载函数定义: double operator+(inti,intk){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/cLNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若有一下程序段int*ptr,x,y=11;ptr=&x;*ptr=10;x=*ptr+y;执行该程序段后,x的值是______。
一个函数功能不太复杂,但要求被频繁调用,选用______。
阅读以下程序:#include<iostream.h>voidmain(){staticinta[][3]={9,7,5,3,1,2,4,6,8};inti,j,s1=0,s2=0;for(i=0;i<3;i++)for
若定义:floatx;inta,b;,则正确的switch语句是()。
最简单的交换排序方法是()。
支持数据库各种操作的软件系统叫做()。
执行语句序列ofstreamoutfile("data.dat");if(...)cout<<"ok";elsecout<<"fail";后,如果文件打开成功,显示“ok”,否则显示“fail”。由此可知,上面if语句的“...
程序流程图中带有箭头的线段表示的是
数据流图中带有箭头的线段表示的是( )。
随机试题
为保障人民民主,加强社会主义法制必须做到()
补益剂服药时间宜( )
停经三个月,子宫远大于孕月时,鉴别正常妊娠、多胎、异常妊娠的最好方法是
曾某就特定信息向政府部门要求公开查阅,下列做法正确的是:
()不可以作为资产证券化业务的基础资产。
下列市场条件变化中,导致对商品住宅需求变化的有()
衢州孔氏南宗家庙的()为1998年复建。
批复针对的文种是()。
Intermsof______wordscanbedividedintoclosed-classwordsandopen-classedwords.
学校文化的核心部分是制度文化。()
最新回复
(
0
)