首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下类模板定义: template<typename T> class BigNumber{ long n; public: BigNumber(T i):n(i){} BigNumber operator+(BigNumber b){ return B
有如下类模板定义: template<typename T> class BigNumber{ long n; public: BigNumber(T i):n(i){} BigNumber operator+(BigNumber b){ return B
admin
2020-07-30
46
问题
有如下类模板定义:
template<typename T>
class BigNumber{
long n;
public:
BigNumber(T i):n(i){}
BigNumber operator+(BigNumber b){
return BigNumber(n+b.n);
}
}
已知b1、b2是BigNumber的两个对象,则下列表达式中错误的是( )。
选项
A、b1+b2
B、b1+3
C、3+b1
D、3+3
答案
C
解析
C++运算符的重载有两个方式,一种是做为成员函数,另一种是做为友元函数。前种C++默认省略第一个参数(事实上是对象本身),而后一种是所有的参数都要写全。比如对加法的重载:成员方式为COperator operator+(COperator&op);在调用的过程中我们可以理解为result=operator+(op);友元方式为friend COperatoropexator-(COperator &op1,COperator &op2);,在调用的过程中我们可以理解为result=operator-(op1,op2);。
对于本题来说,整数3与b1相加时,3是int型,b1是BigNumber<T>型,int型不能和别的型做运算。
转载请注明原文地址:https://kaotiyun.com/show/kTyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类定义:classPass{staticintcount;public:Pass(){}voidshow()const;friendin
下列运算符中,可以重载为类的友元函数的运算符是
有如下程序段:inti=1;intj=4;intmain(){intj=i,i=8;cout
下列叙述中正确的是
通过运算符重载,可以改变运算符原有的()。
下列有关类成员的叙述中,正确的是
运算符重载是对已有的运算符赋予多重含义,因此()。
下面叙述中错误的是()。
随机试题
Thenationalbankhasbeenuncommonlypowerfulincomparisontoitscounterpartsinothernations.Itretainsthispotencypartl
阴虚火旺、肺肾阴虚所致盗汗、骨蒸潮热、心烦等证,宜选用的药物是
用酚法提取RNA,在离心分离时,RNA存在于离心管(),DNA存在于()。
患者,女,28岁。近2月经量渐减,点滴即止,胸闷呕恶,带下量多,形体肥胖,舌淡苔白腻,脉滑。其诊断是()
男,38岁。因胃癌行胃大部分切除术,术前查Hb110g/L,术中失血约1000ml,已输入平衡盐溶液2000ml,术后第1天感胸闷、气促。查体:T37.0℃,BP100/60mmHg。实验室检查:Hb80g/L。最好应给患者输()
头孢噻酚钠等头孢菌素族抗生素药物的鉴别反应青霉素V钾的鉴别反应
阅读下面的文字,完成下列题目。一片不知愁的落叶
(2017·陕西)由于新旧知识的关系不同,形成了不同的学习形式,即下位学习、上位学习和并列结合学习。下列选项中属于下位学习的是()
2013年11月23日,我国宣布划设东海防空识别区。对此,下列说法不正确的是()。
A、Separatehouseswerebuiltforstoringice.B、Doublewallswerebuiltinicehousestokeepcool.C、Blocksoficewerepackedw
最新回复
(
0
)