class c};
void
f( c&);
intmain()
void
f( c& c)
本例展示了物件c1和物件引用c使用成員選擇操作符的語法,成員選擇運算子只能用於物件和物件引用。而要通過指標來訪問成員,必須使用指標操作符->。
class c};
void
f(c*);
intmain()
void
f(c* p)
在本例中,將乙個指向物件c1的指標傳遞給函式f,而不是傳遞其引用。所以在f中,指標p對m的訪問用指標操作符->,由於f得到的是乙個指向c1的指標而不是c1的引用,所以指標不能用成員選擇符來呼叫m.
在c++中,指向物件的指標主要用於兩個方面:
總結:
在成員函式內部可以用指標常量this來訪問與成員函式的呼叫相關聯的物件(this是乙個關鍵字)。
class c
private:
int x;};
intmain()
本例中,建構函式將私有資料成員x初始化為0,用this可以這麼改:
class c
private:
int x;};
intmain()
this指向物件c1,即this的值為&c1.
this指標還可以這麼用,類的公有成員函式經常會訪問私有資料成員,如:
class c
void
set(
const
int& id)
private:
int id;
};
本例中,用大寫字母id作為引數,來避免與成員變數名id發生衝突,而如果就想用id作為引數,這時可以使用this指向成員變數id:
class c
void
set(
const
int& id)
private:
int id;
};
this指標是乙個常量,它不能作為賦值、遞增、遞減等運算的目標物件,並且,this只在非static成員函式中才有效。 物件陣列 物件指標 指向物件的指標
1.物件陣列的每乙個元素都是同類的物件 class student private int score int main 三個實參分別傳給陣列的三個建構函式 return 0 2.當資料成員中含有預設引數時 student int 100,int 80,int 90 含有預設引數時 student ...
c 物件導向程式設計 物件導向
什麼是物件導向 是對現實世界理解和抽象的方法。物件導向程式設計的特點 易維護,易擴充套件,靈活性好,重用 類 對事物的抽象定義,即事物具有的共同特徵和行為。物件 即對類進行例項 類是抽象的,物件是具體的 類的定義 語法 訪問修飾符 class 類名類的成員 包括字段,屬性,方法,常量,事件和索引器等...
指向物件的指標
正常情況下物件一經宣告就為物件的成員分配儲存空間,並呼叫其建構函式進行初始化,物件生存期結束後自動呼叫析構函式,並釋放物件占用的空間。缺點 造成記憶體緊張 解決途徑 先宣告這些物件,在需要這些物件時才分配儲存空間和呼叫建構函式,使用完之後可以立即呼叫析構函式釋放其記憶體空間。這一途徑使用c 語言指向...