物件陣列和指標

2021-08-19 01:53:27 字數 1228 閱讀 1962

宣告乙個物件陣列

呼叫單個陣列元素公有成員

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 ...