c++的this指针

发布时间:2024年01月11日

this指针是c++类中的概念,this英文翻译是这,这个,其实在类中就是这个意思。

?this指针的使用

this指针主要用于类中的非静态成员方法,在这些方法中,this指针就指向当前调用此方法的这个对象。

1. this的使用场景一:? ?当有参构造函数的参数名和类中成员变量名相同

Human::Human(int age, string name) {
	this->age = age;
	this->name = name;
}

this指向的是当前调用此函数的对象,那么this->age,就表示访问当前对象的成员变量age,这样就能区分开参数age和成员变量age。?

2. this的使用场景二:当我们需要返回当前对象的时候

Human& Human::operator=(Human &man) {
	// 进行一系列赋值操作

	return *this; // 返回当前对象
}

Human* Human::operator=(Human &man) {
	// 进行一系列赋值操作

	return this; // 返回当前对象
}

这段代码是类中的赋值构造函数(当然还有其它的使用场景,此处只是举个例子),我们为了实现能够连续赋值的情况(man=man1=man2)--不懂的话请看构造参数中的赋值构造参数那一块,需要返回当前对象。

?1)如果为引用返回:那就返回对象本身,即*this。

?2)? 如果为指针返回:? ?那就返回对象地址,即this。?

文章来源:https://blog.csdn.net/weixin_68026222/article/details/135539704
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。