用于存放对象地址的变量。
语法形式
类名 * 对象指针名;
访问对象成员的语法形式
对象指针名-> 成员名 //与(*对象指针名).成员名 等价
例 使用指针访问point类的成员。
//6_12.cpp
#include <iostream>
using namespace std;
class Point { //类的定义
public: //外部接口
Point(int x = 0, int y = 0) : x(x), y(y) { } //构造函数
int getX() const { return x; } //返回x
int getY() const { return y; } //返回y
private: //私有数据
int x, y;
};
int main() { //主函数
Point a(4, 5); //定义并初始化对象a
Point *p1 = &a; //定义对象指针,用a的地址将其初始化
cout << p1->getX() << endl; //利用指针访问对象成员
cout << a.getX() << endl; //利用对象名访问对象成员
return 0;
}
得到的输出结果都是一样的,所以使用对象名访问和指针访问是等价的。
对象指针在使用前,一定要先进行初始化,让他指向一个已经声明过的对象,然后再使用。
this指针
指向当前对象自己,隐含于类的每个非静态成员函数中,用于指向正在被成员函数操作的对象。
当通过一个对象调用成员函数时,系统先将该对象的地址赋值给this指针,成员函数对对象的数据成员进行操作时,就隐含使用了this指针。
1693

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



