C++问题:“通过运算符重载可以改变运算符原有的操作数类型”不懂。它到底怎祥改变的啊?

2024-12-30 13:34:52
推荐回答(3个)
回答1:

就比如说“+”号,当1+1的时候=2,但是当一个学生+一个学生的时候=?,
你可以重载“+”,自己定义“+”,让他进行你自己规定的运算,一个学生+一个学生=一盘锅包肉。嘿嘿。
就是类似的道理,希望能对你有帮助。

回答2:

运算符的运算本来只适于基本数据类型的操作.如int,float,char等.可以进行加减乘除等运算.但是通过运算符的重载你可以进行对任何类型的操作,可以对自己定义的类进行运算.就是说扩展了操作数类型.假设你自己定义了一个CString类,并且重载了"+"运算符,让两个字符串进行连接操作,即CString s1="abc";CString s2="efg";CString s3=s1+s2;//执行完s3="abcefg",实现了两个对象之间的操作.如果你没有重载"+"运算符,那么执行s3=s1+s2;编译器就不知道要执行什么功能了,就会报错.

回答3:

比如+ 比方说以前只能做 1+1 1.2+3.4等等重载了可疑做复数运算 (1+2e)+(2-e)得到(1+2)+(2-1)e=3+e重载运算符就是使原来的运算符有更丰富的功能