1樓:飛鷹
物件陣列的定義:類名 陣列名[元素個數]
eg: student asa[10];//有10個元素的學生類物件陣列
組成陣列的各個變數稱為陣列的分量,也稱為陣列的元素,有時也稱為下標變數。陣列是在程式設計中,為了處理方便, 把具有相同型別的若干變數按有序的形式組織起來的一種形式。
擴充套件資料:
初始化a.在函式體內定義的內建陣列,其元素沒有初始化
b.在函式體外定義的內建陣列,其元素初始化為零
c.對於類型別,不管陣列在哪定義,都呼叫該類的預設建構函式進行初始化,若該類沒有預設建構函式,則需顯式初始化。
int a[5]=; //a=
string str[5]=; //str=;
char cal = ; //size=3
char cal = ; //size=4
char cal = "c++"; //size=4
char cal[3] = "c++"; //error
注意:不能象vector一樣,用陣列給另一陣列直接初始化,或者直接賦值
char a[3] = ;
char b[3];
a=b; //error;
char a[3] = ;
char b(a); //error
2樓:匿名使用者
應當叫物件陣列,不叫類陣列
首先建構函式必須要有無參建構函式
定以後物件陣列後再呼叫初始化函式,初始化各物件class abc;
//其他函式
void init(int a,int b);
}int main()
b=new abc[20];
for(int i=0;i<20;i++)//其他過程
} 只有有參建構函式,不能宣告物件陣列。必須有無參建構函式即申明物件陣列時,不能使用有參建構函式,初始化資料的傳遞需要另外對每個陣列元素單個呼叫初始化函式。這樣也有好處每個陣列元素都可以有自己的初始化引數。
可以把有參建構函式完成的功能分開成不需要引數的部分和需要引數的部分不需要引數的部分,寫成無參建構函式,需要引數的部分寫成初始化函式,或者乾脆無參建構函式寫成空函式,什麼都不幹,把所有的任務交給初始化函式完成。
3樓:匿名使用者
物件陣列的初始化函式可以有多個,函式名與物件名相同,屬性應為public。不同的初始化函式以引數的數量、型別來區分,呼叫時應注意,避免使用模稜兩可的引數導致呼叫時產生混亂。
如:初始化函式有兩個,第一個的引數為(double a, int b),第二個函式的引數為(int a,double b)。呼叫時賦與的引數是(3,4),這樣便會導致混亂,不知呼叫哪個初始函式了。
c++如何定義一個類的陣列物件
4樓:
使用預設建構函式cpeople::cpeople(){}新增個介面函式: setpeopleinfi(int nowfloor,int direction,int endfloor) 把變數傳進去。
cpeople* ppeoples = new cpeople[10];
for(int i = 0;i < 10;i++)
c++如何用類使用自定義的array陣列呢? 60
5樓:匿名使用者
運算子過載不能改變原有的語義
如何定義動態的物件陣列,如何定義一個動態的物件陣列?
切切切 如果使用的是c語言的話,用malloc函式,定義動態陣列。例如 int a int malloc sizeof int 10 分配10個int型別的陣列,同int a 10 普通陣列分配在棧 stack 裡面,由變壓器統一分配和 動態陣列則定義在堆 heap 裡面,分配後要呼叫用free函式...
C如何定義類型別的陣列,C 中如何定義類的陣列,以及給他們賦值?
student 學生物件的陣列 liststu new list 學生物件的集合 c 中自定義類陣列和結構陣列的使用 發現很多時候給定的陣列要實現某個邏輯或處理很是麻煩,一維陣列,二維陣列,等等需要經過n多轉換,還不如自己寫一個自定義陣列,既方便又節省時間,以下是類陣列,其實相當於定義了一個實體類一...
javascript如何建立陣列時定義型別
網海1書生 指令碼都是弱型別語言,就是說變數宣告的時候是不能顯式指定型別的,在賦值的時候再根據值的實際型別來決定變數的型別。比如var a,這時候a的型別是一種特殊的型別,叫undefined,然後當你a 123,它立刻就變為number型了,a 123 則變為string型。當然實際應用中宣告和賦...