A-A+

有如下类模板定义: templateclassBigNumber{lo

2022-08-06 01:47:11 问答库 阅读 174 次

问题详情

有如下类模板定义:
template<typenameT>
classBigNumber{
longn;
public;
BigNumber(Ti):n(i){}
BigNumberoperator+(BigNumberb){
returnBigNumber(n+b.n):
}
};
已知b1、b2是BigNumber的两个对象,则下列表达式中错误的是()。
A.b1+b2
B.b1+3
C.3+b1
D.3+3请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:C
C。【解析】该题考查了C++模板类和+运算符重载的知识,3+b1时,程序不能将b1转化为整型,所以编译会出错。

考点:定义,模板