c++ this指針
阿新 • • 發佈:2017-11-09
構造 top 容易 char circle highlight 用戶 使用 locks
{
return 3.14*r*r;
}
先要理解class的意思。class應該理解為一種類型,象int,char一樣,是用戶自定義的類型。用這個類型可以來聲明一個變量,比如int x, myclass my等等。這樣就像變量x具有int類型一樣,變量my具有myclass類型。理解了這個,就好解釋this了,my裏的this 就是指向my的指針。如果還有一個變量myclass mz,mz的this就是指向mz的指針。 這樣就很容易理解this 的類型應該是myclass *,而對其的解引用*this就應該是一個myclass類型的變量。通常在class定義時要用到類型變量自身時,因為這時候還不知道變量名(為了通用也不可能固定實際的變量名),就用this這樣的指針來使用變量自身。
我自己寫的博客c++ cpp和hpp中,有一個例子:
.h代碼:
#ifndef CIRCLE_H
#define CIRCLE_H
class Circle
{
private:
double r;//半徑
public:
Circle();//構造函數
Circle(double R);//構造函數
double Area();//求面積函數
};
#endif
.cpp代碼;
#include "Circle.h"
Circle::Circle()
{
this->r=5.0;
}
Circle::Circle(double R)
{
this->r=R;
}
double Circle:: Area()
return 3.14*r*r;
}
這樣就能理解this指針了
https://www.cnblogs.com/liushui-sky/p/5802981.html
c++ this指針