this指针用于记录当前对象的内存地址,然后通过“->”访问对象的成员,如:
#include <iostream>
using namespace std;
class A
{
public:
int get(){return i;}
void set(int x){this->i=x;cout<<"this指针保存的内存地址"<<this<<endl;}
private:
int i;
};
int main()
{
A a;
a.set(10);
cout<<"对象a的内存地址"<<&a<<endl;
cout<<"对象a的值:"<<a.get()<<endl;
A b;
b.set(100);
cout<<"对象b的内存地址"<<&b<<endl;
cout<<"对象b的值:"<<b.get()<<endl;
return 0;
}输出结果:
分析:
1、this指针永远指向当前对象,即保存当前正在使用对象的地址,当对象a被创建时,this指针保存a的对象地址,当对象b被创建时,this指针保存b的对象地址;
2、语句this->i=x中的“this->”可以省略不写,编译器会在"i=x"前自动加上"this->";
3、this指针的创建与删除是由编译器完成的。
本文深入解析C++中的this指针,解释其如何用于记录当前对象的内存地址,并通过->操作符访问对象成员。通过实例代码演示this指针的应用,包括对象地址获取、成员赋值等核心概念。

558

被折叠的 条评论
为什么被折叠?



