首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下的运算符重载函数定义: double operator +(int i,int k){ return double(i+k);} 但定义有错误,对这个错误最准确的描述是( )。
有如下的运算符重载函数定义: double operator +(int i,int k){ return double(i+k);} 但定义有错误,对这个错误最准确的描述是( )。
admin
2017-06-16
31
问题
有如下的运算符重载函数定义:
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全国计算机二级
相关试题推荐
有以下类定义classMyClass{public:MyClass(){cout<<l;)};则执行语句MyClassa,b[2],*p[2];后,程序的输出结果是
下列程序的运行结果是【 】。#include<iostream,h>classBase{public:voidf(intx){cout<<"Base:"<<x<<end1;}
若有下列定义及初始化语句: int i=100; int *ip=&i; int k=*ip; 并假设整型数i的地址为0x12345678,指针ip的地址为0x21000000,则k的值为( )。
关于new运算符的错误的描述是()。
重载输入流运算符>>必须使用的原型为
下列运算符中不能在C++中重载的是
类中包含了一个静态成员函数,则main函数中和P.f1(P);语句具有同样功能的语句为【 】。#include<iostream.h>classM{
执行语句序列charstrl[10]="ABCD",str2[10]="XYZxyz";for(inti=0;strl[i]=str2[i];i++)后,数组str1中的字符是XYZxyz,数组str2中的字符串是【 】。
重载的流运算符函数经常定义为类的______函数。
随机试题
根据《重要地理信息数据审核公布管理规定》,重要地理信息数据公布时,应当说明()。
下列哪项不属于项目建议书编制的内容()
海关批准进口货物保税的原则为()。
报关单位申报出料加工货物出境时应向海关提交出料加工登记手册、出口货物报关单、货运单据及其他海关需要的报关单证;属于应征出口税的商品,应向海关提供担保,属于许可证件管理的商品,应向海关提交许可证件。()
下列情况下,企业可将其他资产转换为投资性房地产的有()。
AlexisdeTocqueville,theFrenchpoliticalscientist,historian,philosopherandpolitician,ismostfamousforafour-volumeb
某车间需要用一台车床和一台铣床加工A、B、C、D四个零件。每个零件都需要先用车床加工,再用铣床加工。车床与铣床加工每个零件所需的工时(包括加工前的准备时间以及加工后的处理时间)如表3。若以A、B、C、D零件顺序安排加工,则共需32小时。适当调整零件加工
下图是在一台Windows主机在命令行模式不执行某个命令时用sniffer捕获的数据包。请根据图中信息回答下列问题。该主机上执行的命令是【5】。
下列各组排序法中,最坏情况下比较次数相同的是()。
Theteam______itswinningseasontohardworkanditsnewcoach.
最新回复
(
0
)