C++面向对象——this指针

1.每个成员函数(包括构造和析构)都有一个this指针。

2.在成员函数内部,this指针指向调用对象,即可以通过this关键字访问当前对象的成员。

(1)访问成员变量:

this->成员名;

(2)访问成员函数:

this->函数名();

this是指向对象的指针,而*this则指向对象的本体

student& stuAge(student &stu)
{
//Func
return *this;
}

若student&不加引用则会返回复制的那份student,引用则会返回student这个对象本体

3.this指针在成员函数执行前就已经存在,在析构后清除。

4.this指针的类型为类类型*const(类名 *const)为右值。

5.this指针本身不占用大小,他并不是对象的一部分,不会影响sizeof()的结果。

6.this的作用域在类成员函数的内部。

7.this指针是类成员函数的第一个默认隐含参数(const *类名 this),编译器自动维护传递,类编写者不能显式传递。

8.只有在类的非静态成员函数中才可以使用this指针,其他任何函数都不可以。

9.this指针作用:

(1)解决名称冲突

(2)可以用来返回当前对象的引用。

10.任何对类成员的直接访问(使用成员访问运算符::)都可被看作是对this的隐式引用。

你可能感兴趣的:(C++,c++,面向对象编程)