#include<iostream>
using namespace std;
#include<string>
//this指针的用途,this指针指向被调用的成员函数的对象
//this指针是隐含在每一个非静态成员函数内部的一个指针
class person {
public:
int age;
//作用1:解决名称冲突
person(int age) {
this->age = age;
}
//作用2:返回对象本身用*this
person& personaddage(person&p) {
this->age += p.age;
return *this;//this指向对象,不用引用会调用拷贝构造函数,拷贝一个新的数据作为返回值,会返回一个新的对象
}
};
void test() {
person a(10);
cout << "age=" << a.age << endl;
}
void test1() {
person b(10);
person c(10);
c.personaddage(b).personaddage(b).personaddage(b); cout << "相加后的年龄为" << c.age<<endl;
}
int main() {
test1();
system("pause");
return 0;
}
|