1.代码
#include <iostream>
using namespace std;
class Person
{
public:
int m_a;
int m_b;
public:
Person(){}; //注意,如果写了有参构造,编译器不会提供默认构造
Person(int a,int b):m_a(a),m_b(b){};
Person operator +(const Person& p)
{
Person tmp; //否则,这里会报错,如果不写默认无参构造
tmp.m_a = this->m_a + p.m_a;
tmp.m_b = this->m_b + p.m_b;
return tmp;
}
};
int main()
{
Person p1(10,20);
Person p2(30,40);
Person p3 = p1+p2;
cout<<"p3的m_a="<<p3.m_a<<endl;
cout<<"p3的m_b="<<p3.m_b<<endl;
return 0;
}
2.注意事项
1.写了有参,会覆盖无参;因此,自己要补上
2.this指针常量,谁调用函数,就指向谁
3.class ENtity
{
};
外面没有括号的。