物件指標(C++學習筆記 21)
阿新 • • 發佈:2018-12-09
物件指標就是用於存放物件地址的變數。
宣告物件指標的一般語法形式:
類名 *物件指標名
1、用指標訪問單個物件成員
在一般情況下,用點運算子 “ . ” 來訪問物件成員,當用指向物件的指標來訪問物件成員時,就要用 “ -> ” 操作符。
例 1: 物件指標的使用
#include<iostream>
using namespace std;
class exe{
public:
void set_a(int a){ //定義成員函式set_a,給資料成員賦值
x=a;
}
void show_a(){ //定義成員函式show_a,輸出資料成員的值
cout<<x<<endl;
}
private:
int x;
};
int main(){
exe ob;
exe *p;
ob.set_a(2);
ob.show_a();
p=&ob;
p->show_a();
(*p).show_a();
return 0;
}
2、用物件指標訪問物件陣列
#include<iostream>
using namespace std;
class exe{
public:
void set_a(int a){ //定義成員函式set_a,給資料成員賦值
x= a;
}
void show_a(){ //定義成員函式show_a,輸出資料成員的值
cout<<x<<endl;
}
private:
int x;
};
int main(){
exe ob[2]; //定義類exe的物件陣列ob[2]
exe *p;
ob[0].set_a(10);
ob[1].set_a(20);
p=ob; //把物件陣列的地址賦給物件指標變數p
p->show_a();
p++;
p->show_a();
return 0;
}
其中的“ p=ob ” 表示把物件陣列的第一個元素的地址(即陣列的地址)賦給物件指標變數p。物件指標p加1 時,指向下一個陣列元素。