对于内置数据类型,编译器知道如何进行运算
int a= 10:
int b=10;
int c= a + b;
class Person
I
public:
int m A:
int m_B;
Person pi;
p1.m_A = 10:
pl.m_B = 10:
Person p2;
p2.m_A = 10:
p2.m_B = 10:
Person p3=p+p2:
通过自己写成员的数,实现两个对象相加属性后返回新的对象
Person PersonAddPerson(Person 8p)
Person temp;
temp.mA= this>m_Ã +p.m A
temp.m B=this->m B + p.m B
return temp;
编译器给起了一个通用名称
通过成员函数重载+号
operator+
(Person &p)
Person
Person temp;
temp.m A=this->m A + p.m A:
temp.m B=this->m B+p.m B;
return temp;
Person p3=pi.operator+(p2):
简化为
Ferson p3=p1 +p2:
通过全局函数重载+
Person operator+(Person &pl,Person &p2)
Person temp;
temp,m_Ã=pl.m_À +p2.m_A;
temp.mB=pl.mB+p2.m B;
return temp;
Person p3=operator+ (pl,p2)
简化为
Person p3=p+p2: