《Essential C++》系列笔记之第四章(基于对象的编程风格)之第四节(什么是this指针)

《Essential C++》系列笔记之第四章(基于对象的编程风格)之第四节(什么是this指针)_第1张图片
代码实践

#include 
using namespace std;
#include 

class Teacher
{
public:
	Teacher()
	{}

	Teacher(int age, string name, int tel_number)
		:_age(age), _name(name), _tel_number(tel_number)
	{}

	Teacher& copy(const Teacher& rhs) //每个member function 都有一个*this 所以实际参数列表: (Teacher* this,const Teacher& rhs)
	{        
		if (this != &rhs)
		{
			/*this->*/_age = rhs._age;
			_name = rhs._name;
			_tel_number = rhs._tel_number;
		}
		return *this;
	}
	void display_name()
	{
		cout << this->_name << endl;
	}

private:
	int _age;
	string _name;
	int _tel_number;
};

int main()
{
	Teacher A(18, "A", 1234);

	A.display_name(); 

	A.copy(A); //调用的对象与自己相同

	Teacher B;
	B.copy(A); //实际是这样 copy(&B, A);

	B.display_name();
	

	system("pause");
	return 0;
}

今天是20200318 离开360的第一天! q(≧▽≦q)

你可能感兴趣的:(《Essential,C++》系列笔记)