اصولا به توابعی که توسط شیء ای از کلاس فراخوانی شده، یک اشارهگر به اون شیء (که تابع توسط اون فراخوانی میشه) هم بطور ضمنی فرستاده میشه.
این اشارهگر this در واقع آدرس اون شیء در خودش داره.
و در تابع ازش استفاههای مختلفی میشه که به غیر از استفاده از this جور دیگهای نمیشه بعضی کارها رو انجام داد، مثال زیر:
#include<iostream.h>
#include<conio.h>
class pwr{
double b;
int e;
double val;
public:
pwr(){val=1;}
void input();
void power();
double get_pwr() { return val;}
};
//*********************************
void pwr::input()
{
cout<<"enter base, power:";
cin>>b>>e;
}
//*********************************
void pwr::power()
{
for(;e>0;e--)
this -> val=this -> val * this -> b;
}
//*********************************
int main()
{
clrscr();
pwr x;
x.input();
x.power();
cout<<"power="<<x.get_pwr()<<" ";
getch();
return 0;
}