首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下类定义: class MyClass{ public: MyClass(int d=0):val(d)+{} _________ //运算符函数+的声明 private: int val;
有如下类定义: class MyClass{ public: MyClass(int d=0):val(d)+{} _________ //运算符函数+的声明 private: int val;
admin
2020-05-14
76
问题
有如下类定义:
class MyClass{
public:
MyClass(int d=0):val(d)+{}
_________ //运算符函数+的声明
private:
int val;
};
若要使语句序列
MyClass X(2),y(4),z;
z=7+y:
y=x+3:
能够正常运行,横线处的声明语句应为( )。
选项
A、friendMyClass operator+(MyClass,MyClass);
B、friendMyClass operator+(MyClass&,MyClass&);
C、friendMyClass operator+(MyClass,MyClass&);
D、friendMyClass operator+(MyClass&,MyClass);
答案
A
解析
程序中MYClass类给出一个默认构造函数,形参d是整数类型,默认值为0,在成员初始化列表中使用形参d初始化val成员;语句序列中两个表达式:7+y和x+3说明加法运算符函数的两个操作数可以是整型,也可以是MyClass类型,如果是整型的话,需要使用默认构造函数将整数类型隐式转换成临时的MyClass类对象,此时赋给运算符函数时,就不可以使用引用类型了,所以选项B、C、D都是错误的,选项A是正确的,选项A中由于两个操作数都是在形参列表,所以只能将运算符函数定义为友元函数,而不能定义为成员函数,本题答案为A。
转载请注明原文地址:https://www.kaotiyun.com/show/tS8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面程序的输出结果是#include<iostream.h>classexample{inta;public:example(intb){a=b++;}voidpnnt(
有如下程序:#include<iostream>usingnamespacestd;classPart{public:Part(intx=0):val(x){cout<<val;}~
设有以下程序段:inta[5]={0},*p,*q;p=a;q=a;则下列选项中,合法的运算是
下列叙述中错误的是()。
插入排序算法的主要思想是:每次从未排序序列中取出一个数据,插入已排序序列中的正确位置。Insert类的成员函数sort()实现了插入排序算法,请填空。classInsert{public:Insert(int*b0,int
下列关于运算符重载的说法中,不正确的是()。
C++语言提供的基本控制结构可以分为3种类型:顺序结构、【】和循环结构。
关系数据库管理系统能实现的专门关系运算包括()
软件是程序、数据和______________的集合。
随机试题
下列不符合恶性纤维组织细胞瘤的描述是
最有利于协助判断性情变化原因的检查是有助于精神症状缓解的治疗不包括
清肺热,养肺阴宜用敛肺生津宜用
慢性肝炎是指肝发生炎症及肝细胞坏死持续
A.神经官能症B.左心衰竭C.喘息型慢性支气管炎D.气胸E.喉水肿呼气性呼吸困难
根据《环境影响评价技术导则一总纲》,哪些项目需进行资源利用合理性分析。()
防止引燃煤尘爆炸的措施有()。
某高校副校长对学生说:“看到老人摔倒了你就去扶。他要是讹你,法律系给你提供法律援助。要是败诉了。学校替你赔偿!”这段话得到广大网友的力挺,并在网络上迅速蹿红,被称为“撑腰体”。请你谈谈对于“撑腰体”蹿红这一现象的看法o
计算机中所有信息的存储都采用
DWINDLE:
最新回复
(
0
)