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

在这里插入图片描述
代码实践

#include <iostream>
using namespace std;
#include <string>

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)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值