C++中 运算符重载 到底有什么何意义?

一直想不透这个问题,运算符重载与没重载前有什么不同,用operator定义一个运算符重载函数,不就和用一个其他名字的函数定义一个运算方式一样的吗?请高手指点,我层次交浅,... 一直想不透这个问题,运算符重载与没重载前有什么不同,用operator定义一个运算符重载函数,不就和用一个其他名字的函数定义一个运算方式一样的吗?
请高手指点,我层次交浅,请说得通俗点,用例说明最好,先谢谢!!!
是不是每个运算符在库里都有函数定义,而要是我们想要它做被的运算重载它就可以了
展开
 我来答
湛蓝水晶
2006-12-06 · 知道合伙人数码行家
湛蓝水晶
知道合伙人数码行家
采纳数:1388 获赞数:9351
毕业北京科技大学数学与应用数学专业,学士学位,IT行业6年从业经验。现任公司项目经理。

向TA提问 私信TA
展开全部
的确是一样的,比如你重载了加号,其实是同样可以定义add()函数来完成相同的操作。
重载是为了让运算比较符合人的思维,比如定义一个矩阵类matrix
matrix a, b ,c;
//...
//初始化a、b的语句
c = a+b; //如果没有重载加号的话,这条就通不过编译了
只是这个+号你同样可以定义一个add函数来操作,如:
c = a.add(b);
你觉得哪种方法比较直观?
vlght
推荐于2017-10-11 · TA获得超过258个赞
知道答主
回答量:216
采纳率:0%
帮助的人:76.3万
展开全部
运算符重载是一种特殊的函数重载。例如int a,b;则求a+b值时,在编译过程中使用的是函数调用:opertor+(a,b).主要作用就是使程序更加简洁,减少编程时间。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友985ec4f45
2006-12-06 · TA获得超过135个赞
知道答主
回答量:75
采纳率:0%
帮助的人:0
展开全部
你想想如果两个时间相加,你用+号行吗?
你要是把+号重载一下,写一个你自己的+号运算方法不就可以了。
运算符重载就是自己定义符号
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
推荐于2017-09-09
展开全部
  运算符重载是一种特殊的函数重载。
  c++的一大特性就是重载(overload),通过重载可以把功能相似的几个函数合为一个,使得程序更加简洁、高效。在c++中不止函数可以重载,运算符也可以重载。
  由于一般数据类型间的运算符没有重载的必要,所以运算符重载主要是面向对象之间的。
  在进行对象之间的运算时,程序会调用与运算符相对应的函数进行处理,所以运算符重载有两种方式:成员函数和友元函数。
  成员函数的形式比较简单,就是在类里面定义了一个与操作符相关的函数。友元函数因为没有this指针,所以形参会多一个。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式