行业知识
[C++核心编程](七):类和对象——运算符重载*
2026-11-08 15:15:26
来源:互联网转载
���录
()四则运算符重载
左移运算符重载
()递增运算符重载
赋值运算符重载
关系运算符重载
函数调用运算符重载
对已有的运算符重新进行定义,赋予其另一种功能,以适应不同的数据类型
四则运算符重载
对自定义数据类型实现四则运算(加减乘除)操作,比如:自己写成员函数,实现两个对象相加属性后返回新的对象
注意:四则运算符重载也可以进行函数重载。
总结:
1.对于内置的数据类型的表达式的的运算符是不可以改变的
2.不要滥用运算符重载
#include using namespace std;class Person{public:int m_a;int m_b;Person(int a, int b) :m_a(a), m_b(b){}//成员函数重载Person operator+(const Person &p){Person rp(0, 0);rp.m_a = this->m_a + p.m_a;rp.m_b = this->m_b + p.m_b;return rp;}};//全局函数重载static Person operator-(const Person& p1, const Person& p2){Person rp(0, 0);rp.m_a = p1.m_a - p2.m_a;rp.m_b = p1.m_b - p2.m_b;return rp;}//函数重载static Person operator-(const Person& p1, const int value){Person rp(0, 0);rp.m_a = p1.m_a - value;rp.m_b = p1.m_b - value;return rp;}int main(void){Person p1(10, 10);Person p2(10, 10);Person p3(5, 5);Person p4 = p1 + p2; //Person p4 = p1.operator+(p2);cout
上一篇:怎么黑进阿里云服务器?
下一篇:方舟2怎么加入服务器?