永发信息网

如何将运算符重载函数重载成一般函数形式#include using namespace std;cl

答案:2  悬赏:10  手机版
解决时间 2021-02-20 20:53
如何将运算符重载函数重载成一般函数形式#include using namespace std;cl
最佳答案
你的问题关键出在const成员函数上.这个概念你或许不常见,我先给你说一下,之后给你解决办法.---------------------const成员函数---------------------------类的const成员函数的格式为:返回类型 函数名() const{...}也就是在函数名后面加一个const.类的这种成员函数不允许改变类的成员数据值,也就是说在这种函数体内,不能有改变(或企图改变)类的成员数据的操作,否则会发生编译错误.比如:class A{public:int a;void f() const{a = 1;}};这是错误的,因为f()中改变了成员数据a的值.再如:class A{public:int a;void set(){a = 1;}void f() const{set();}};这也是错误的,因为set()函数会改变成员数据的值,在f()中不应调用它.再如:class A{public:int a;void set(){}void f() const{set();}};这仍然是错误的.虽然在set()中并有改变a的值,但由于set()函数不是const函数,编译器仍然“认为”它会改变a的值,所以在f()中也不能调用set().只要一个函数不被const修饰,编译都认为它会改变成员数据的值!不光const函数如此,被const修饰的对象的值也是不允许改变的.比如你程序中的参数const Cube& aBox.---------------------你的问题---------------------------下面我说一下你的程序.在你的operator
全部回答
好好学习下
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
两台电脑怎样互传文件
铁锈的主要成分是______,其结构______,不能
半径为r的圆筒,绕竖直中心轴oo,转动,小物块a
惠州地税博罗县办税服务厅怎么去啊,有知道地
第八代雅阁在突然加速和爬坡时发动机有打滑的
锦州铁路分局阜新房产建筑工程公司地址在哪,
请问上传编辑企业类百度百科,需要提供公司资
栏杆扶手连墙件预埋进边上的墙体时,是否必须
下列有关绩效和绩效管理的理解,正确的有( )
嘉陵110好生活弯梁摩托车前头化学胶配件
瓦房店市房地产登记发证中心地址在哪,我要去
qq传过去的文件怎么只有表格没有文字
C语言中说的内存是指内存条么?内存条中分为r
以《窗外》为题的诗,原创!
鹏博活海鲜大世界在哪里啊,我有事要去这个地
推荐资讯
同济大药房青岛盛缘医药地址在哪,我要去那里
请问各位大侠:从宁夏中卫到甘肃武威高速公路
中国多少所大学
龙和狗为什么相冲
【初一数学教学总结】七年级上册期末数学总结
笔记本AMD A4-3300M升级CPU ,AMD A8-3510MX
爱情糖果婚礼会所地址在什么地方,想过去办事
源辉商务宾馆我想知道这个在什么地方
“长时间,低强度的有氧运动才能减脂”的观点
Bc《C语言程序设计》汽车加油一辆汽车加满油
下列关于细胞生命历程的说法,错误的是A. 女
长沙县北山镇高仓村民委员会地址在什么地方,
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?