首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在MyClass类的定义中,对赋值运算符二进行重载。请将画线处缺失的部分补充完整。【 】MyClass::operator=(const MyClass& rhs) { if(this==&rhs)return *this;
在MyClass类的定义中,对赋值运算符二进行重载。请将画线处缺失的部分补充完整。【 】MyClass::operator=(const MyClass& rhs) { if(this==&rhs)return *this;
admin
2009-03-16
32
问题
在MyClass类的定义中,对赋值运算符二进行重载。请将画线处缺失的部分补充完整。【 】MyClass::operator=(const MyClass& rhs)
{
if(this==&rhs)return *this;
value=rhs.value;
return *this;
}
选项
答案
MyClass&
解析
本题考查“=”运算符的重载。赋值运算符=的重载应注意以下几点:
①返回值应声明为引用,而函数体中总是用语句return *this;返回;
②如果参数被声明为指向同类对象的引用或指针,应判别所指向的对象是否与被赋值对象为同一对象,如果是,立即返回,不做任何赋值处理:
③如果被赋值对象占用了动态空间或其他资源,应首先释放这些资源,以便接收新的资源;
④如果参数被声明为指针或引用,通常应加上const修饰;
⑤如果参数被声明为指针,应判别是否为空,以便做出特殊处理:
⑥一个类如果需要重载运算符=,通常也就需要定义自身特有的拷贝构造函数,反之亦然。
由此可见,本题应填入MyClass&。
转载请注明原文地址:https://kaotiyun.com/show/zojp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序#include<stdio.h>intf(intk){staticintn=0;intm=0;n++;m++;k++;returnn+m+k;}main()
假定已建立以下链表结构,且指针P和q已指向如图所示的结点:则以下选项中可将q所指结点从链表中删除并释放该结点的语句组是()。
有两个关系R,S如下,由关系R和S通过运算得到关系T,则所使用的操作为
设有定义和语句,int*pi,*pj;pi=pj=(int*)malloc(4);如果在VC平台上编译,则以下叙述正确的是()。
以下能够实现计算5!的程序段是()。
函数fun的功能是:逆置数组元素中的值。例如:若a所指数组中的数据依次为:1、2、3、4、5、6、7、8、9,则逆置后依次为:9、8、7、6、5、4、3、2、1。形参n给出数组中数据的个数。请在程序的下划线处填入正确的内容并把下划线删除,使程序得
有以下程序:#include<stdio.h>voidf(int*p,int*q);main(){intm=1,n=2,*r=&m;f(r,&n);printf("%d,%d",m,n);}voidf(int*p,int*q){
数据管理技术发展的三个阶段中,()没有专门的软件对数据进行管理。Ⅰ.人工管理阶段Ⅱ.文件系统阶段Ⅲ.数据库阶段
在数据处理中,其处理的最小单位是()。
随机试题
生活在不同环境中的同卵双胞胎的智商测试分数很接近,这说明()
处理急性口服中毒昏迷患者不宜采取()
灰土垫层的夯层的一步为()cm。
证券投资顾问禁止对服务能力和过往业绩进行()的营销宣传。Ⅰ.虚假Ⅱ.不实Ⅲ.误导性Ⅳ.审慎性
在我国,共同共有的方式主要包括()。
下列项目中,应计入商品流通企业存货入账价值的有()。
行政机关和法律、法规授权的具有管理公共事务职能的组织的下列行为中,不符合法律规定的有()。
Peopleoftenwonderwhyhistoriansgotosomuchtroubletopreservemillionsofbooks,documentsandrecordsofthepast.Whyd
一个工程中含有窗体Form1、Form2和标准模块Modell,如果在Form1中有语句PublicXAsInteger,在Modell中有语句PublicYAsInteger。则以下叙述中正确的是
Theyboughtthelandinordertobuildanewofficeblock.
最新回复
(
0
)