宣告乙個物件陣列
呼叫單個陣列元素公有成員
a[0].show();//陣列名[下標表示式].成員名
動態建立物件陣列
point *p=new point;//動態建立物件,沒有給出引數列表,呼叫預設建構函式
point *p=new point();//保留括號,但沒有給出任何值,表示用0初始化物件
point *p=new point(p1);//動態分配了用於存p1的記憶體空間,並將初值2放入該空間
delete p;//刪除物件,並自動呼叫析構函式
point *p=new point[10];//new 型別名 [陣列長度],動態建立一維陣列
p[0].move(5,10);//*p==p[0]
delete p;//刪除整個物件陣列
用vector建立陣列物件(在除錯狀態下訪問陣列時檢查下標越界錯誤,防止下標越界錯誤)
#include
vectorarr(10);//vector《元素型別》陣列物件名(陣列長度)。
vectorarr(10,2);/*vector定義的陣列物件的所有元素都會被初始化:如果陣列元素是基本型別,則以0初始化;
如果陣列元素是類型別,則呼叫預設建構函式初始化,所以類必須有預設建構函式;也可以以上述指定初始值2,初
始化所有元素。*/
arr[0];//vector陣列物件元素的訪問,與普通陣列相同
零碎知識點
const int *p=&a; //指向常量的指標,不能通過指標來改變所指物件的值,但指標本身可以改變。
int * const p=&a; //指標常量,指標本身的值不能改變。
void func(int p)
void func(int p[3])
void func(int *p)//一維陣列做引數,三者是等價的
int line1=;
int line2=;
int line3=;
int *p[3]=;
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
cout《後方的第j個數。*/
物件指標->成員名,(*物件指標).成員名,物件指標.成員名是一致的
this指標作為乙個隱含引數傳遞給非靜態成員函式,用以指向該成員函式所屬類所定義的物件。當不同的物件呼叫同乙個類的成員函式**時,編譯器會依據該成員函式的this指標所指向的不同物件來確定應該引用哪個物件的資料成員。
C 物件陣列和物件指標
每天的生活從一杯綠茶開始,2月就這麼過去了,時間總是這麼快 1.物件陣列 在實際中,有許多的實體的屬性是共同的額,只有屬性的具體內容不一樣。這個時候我們就需要定義物件陣列,例如 student stud 50 假設已經宣告了student的類。每乙個陣列元素就是乙個student的物件。建立陣列時候...
指標和物件的陣列實現
有些語言不支援物件和指標資料型別時,可以數陣列來表示乙個虛擬的鍊錶,指標就是鍊錶的索引,就像鏈式基數排序的關鍵字key的儲存方式,排序時只是改變next的索引,在陣列中的實際位置並沒有改變。下面介紹兩種,表示方法。1.物件的多陣列表示 陣列key存放該動態集合中的現有關鍵字,陣陣則分別儲存在陣列ne...
物件陣列 物件指標 指向物件的指標
1.物件陣列的每乙個元素都是同類的物件 class student private int score int main 三個實參分別傳給陣列的三個建構函式 return 0 2.當資料成員中含有預設引數時 student int 100,int 80,int 90 含有預設引數時 student ...