關於物件指標

2021-10-09 14:43:04 字數 1050 閱讀 2691

定義:類名 *物件指標名;eg:time *ptr;

time *ptr;//定義物件指標

time t1; //定義物件t1;

ptr=&t1; //將物件t1的位址賦給物件指標;

使用方式:

*ptr  表示ptr指向的物件t1;

(*ptr).hour 表示ptr指向的物件中hour的成員;

ptr->hour 表示ptr指向的物件中hour的成員;

ptr->get() 表示ptr指向的物件中get()成員函式;

物件成員有兩類,一是資料成員,二是函式成員。因此指向物件的成員的指標也分為兩種,一是普通的指向資料的指標,二是指向函式的指標。

指向資料成員的指標,即資料指標。

int *p;  //定義指向整形資料的指標;

p=&t.hour; //將物件的某個資料成員的位址賦給p,p指向t.hour;

指向函式成員的指標,即函式指標。

函式指標的定義: 函式返回值型別   (*指標變數名)(函式引數表列)例如:void(*p)();

void(*p)();//函式指標的定義原則: 函式返回值型別 (*指標變數名)(函式引數表列)
為了確保函式指標與指向的函式相匹配,必須實現函式返回值、函式引數表列相匹配。在指向成員函式的指標中,除了上述兩點外,還必須滿足所屬類的匹配

因此,指向物件成員函式的指標定義及使用原則如下:

資料型別名 (類名::*指標變數名)(參數列列);

void(time::*p)();//定義指向time類中成員函式的指標
使指標變數指向乙個類中成員函式的一般形式:

指標變數名=&類名::成員函式名 ;

p=&time::get;//將time類中成員函式get的位址賦給函式指標p;

物件陣列 物件指標 指向物件的指標

1.物件陣列的每乙個元素都是同類的物件 class student private int score int main 三個實參分別傳給陣列的三個建構函式 return 0 2.當資料成員中含有預設引數時 student int 100,int 80,int 90 含有預設引數時 student ...

指標與物件指標

指標 結構體指標 類似於物件指標 結構體與類的區別 若不指定public和private,結構體預設為公共,類預設為私有 class time time p 定義p為指向time類物件的指標變數 time t1 p t 將t1的起始位址賦給p 2.指向物件成員的指標 指向資料成員 與普通變數的指標變...

物件指標 當前 this 指標

指向物件的指標,怎麼呼叫物件裡面的函式 指標名 函式名 include using namespace std class point int get x int get y private int x int y int main point number 4,5 point p number i...