#include <iostream>
using namespace std;
class person
{
public:
int m_a;
int m_b;
//1.成员函数重载+
// person operator+(person &p)
// {
// person temp;
// temp.m_a=this->m_a+p.m_a;
// temp.m_b=this->m_b+p.m_b;
// return temp;
// }
};
//2.全局函数重载+
person operator+(person &p1,person &p2)
{
person temp;
temp.m_a=p1.m_a+p2.m_a;
temp.m_b=p1.m_b+p2.m_b;
return temp;
}
//函数重载的版本
person operator+(person &p1,int num)
{
person temp;
temp.m_a=p1.m_a+num;
temp.m_b=p1.m_b+num;
return temp;
}
void test01()
{
person p1;
p1.m_a=10;
p1.m_b=10;
person p2;
p2.m_a=10;
p2.m_b=10;
person p3=p1+120;//简化版本
cout<<p3.m_a<<' '<<p3.m_b;
}
int main ()
{
//加号运算符重载
//对于内置的数据类型,编译器知道如何进行运算
//运算符重载 也可以发生函数重载
test01();
return 0;
}
+运算符重载
最新推荐文章于 2024-05-20 23:52:50 发布