#include <iostream> class MyClass { public: void display() { printf("this 的值为 %p\n", this); }; }; int main() { MyClass a; a.display(); printf("a 的地址为 %p\n", &a); return 0; }main() 函数中定义了一个 MyClass 类对象 a,它调用了 display() 成员函数,那么在 display() 函数的内容就隐含着一个 this 指针,它指向的就是 a 对象。
this 的值为 00D9F8EF
a 的地址为 00D9F8EF
// 定义一个 Ball 类,用于描述小球的状态和移动 class Ball { public: // 构造函数,初始化小球的坐标 Ball(int x = 0, int y = 0) : x(x), y(y) {} // 输出当前位置 void displayPosition() { std::cout << "Ball is at (" << this->x << ", " << this->y << ")" << std::endl; } // 向左移动 Ball& moveLeft(int step) { this->x -= step; return *this; } // 向右移动 Ball& moveRight(int step) { this->x += step; return *this; } // 向下移动 Ball& moveDown(int step) { this->y -= step; return *this; } // 向上移动 Ball& moveUp(int step) { this->y += step; return *this; } private: int x; // x 坐标 int y; // y 坐标 };实例中,this 指针用在以下两个位置:
ball.moveLeft(2).moveUp(3);
。本文链接:http://task.lmcjl.com/news/15863.html