小程序,大问题
#include <iostream>
using namespace std;
class Point
{
public:
int x;
int y;
Point()
// 构造函数,初始化成员变量
{
x = 0;
y = 1;
}
Point(int a, int b)
{
x = a;
y = b;
}
~Point()
// 释放内存空间
{
}
void output()
{
cout << x << endl << y << endl;
}
void output(int x, int y)
{
this->x = x;
// 当形参变量和类的对象变量同名时,存在一个作用域的问题
this->y = y;
// 所以引入this指针来加以区分,说明this指向的x是类对象变量中的x
}
};
void main()
{
Point pt(5, 5);
// 定义一个对象
pt.output(3, 3);
pt.output();
// 输出结果为 3 3,若将void output(int x , int y)函数体中的this指针去掉,则结果为 5 5
}