c++类和对象一对象特楼一this指针的用途讲解

简介: c++类和对象一对象特楼一this指针的用途讲解

在C++中,this是一个特殊的指针,它指向调用成员函数的对象。this指针的用途主要是在成员函数中访问对象的成员变量和调用其他成员函数。通过this指针,成员函数能够知道它是属于哪个对象的,从而可以访问和修改该对象的成员。

 

this指针的用途

访问成员变量:当成员函数的参数名和成员变量名相同时,this指针可以用来区分它们。此外,当需要直接访问当前对象的其他成员时,也可以使用this指针。

 

链式调用:在返回this指针的成员函数中,可以实现链式调用。

 

构造函数和析构函数中:this指针在构造函数和析构函数中特别有用,因为在这些函数中,对象可能还没有完全构造或已经被析构,此时通过this指针可以确保访问的是正确的对象。

 

多态性:在类的继承体系中,当基类指针或引用指向派生类对象时,this指针能够自动调整为派生类对象的指针。

 

示例代码

下面是一个简单的示例,演示了this指针的用法:

image.png

image.png

image.png

在这个例子中,Person类有两个私有成员变量name和age,以及几个公有成员函数。在setName和setAge成员函数中,this指针被用来区分参数和成员变量,并修改成员变量的值。display函数使用this指针来访问成员变量,并打印出个人信息。setNameAndAge函数则是一个返回this指针的例子,它允许链式调用。

 

总结

this指针是C++中一个非常有用的特性,它使得成员函数能够访问和修改对象的成员变量,以及调用其他成员函数。在编写类的时候,this指针可以帮助我们编写更加灵活和健壮的代码。需要注意的是,虽然this指针在成员函数中默认存在,但我们通常不需要显式地声明它,只有在需要时才显式地使用。此外,this指针是一个常量指针,因此我们不能修改它的值,即不能让它指向另一个对象。

目录
相关文章
|
5天前
|
存储 编译器 C语言
c++的学习之路:5、类和对象(1)
c++的学习之路:5、类和对象(1)
19 0
|
30天前
|
存储 编译器 C语言
C++入门: 类和对象笔记总结(上)
C++入门: 类和对象笔记总结(上)
34 0
|
5天前
|
C++
c++的学习之路:7、类和对象(3)
c++的学习之路:7、类和对象(3)
19 0
|
4天前
|
C++
【C++11(三)】智能指针详解--RAII思想&循环引用问题
【C++11(三)】智能指针详解--RAII思想&循环引用问题
|
4天前
|
人工智能 C++
【重学C++】【指针】轻松理解常量指针和指针常量
【重学C++】【指针】轻松理解常量指针和指针常量
9 0
|
4天前
|
存储 人工智能 C++
【重学C++】【指针】详解让人迷茫的指针数组和数组指针
【重学C++】【指针】详解让人迷茫的指针数组和数组指针
25 1
|
4天前
|
编译器 C++
【C++基础(八)】类和对象(下)--初始化列表,友元,匿名对象
【C++基础(八)】类和对象(下)--初始化列表,友元,匿名对象
|
10天前
|
编译器 C++
自从学了C++之后,小雅兰就有对象了!!!(类与对象)(中)——“C++”
自从学了C++之后,小雅兰就有对象了!!!(类与对象)(中)——“C++”
|
10天前
|
存储 编译器 C++
自从学了C++之后,小雅兰就有对象了!!!(类与对象)(上)——“C++”
自从学了C++之后,小雅兰就有对象了!!!(类与对象)(上)——“C++”
|
11天前
|
C++
【C++成长记】C++入门 | 类和对象(下) |Static成员、 友元
【C++成长记】C++入门 | 类和对象(下) |Static成员、 友元