1:在陣列內容中我們了解到,陣列是通過指標分配到的一段額定大小的內容。同樣,陣列也可以包含物件。宣告物件陣列的形式如下:
box boxarray[5];
box boxarray2[2]=;
box boxarray3[3]=;
值得注意的是,第一種申請物件陣列的方法必須保證類中含有預設的夠好函式,否則編譯器將會報錯。同樣,可以通過物件指標申請動態陣列。例如:
box* box;
pbox=new box[n];//n為整數
同時需要確認box中含有預設建構函式。
2:**如下:
(1)box.h
classview codebox;
(2)box.cpp
#include "view codestdafx.h
"#include
#include
"box.h
"using
std::cout;
using
std::endl;
box::box()
box::box(
float lenth,float width,float
hight)
bool box::compare(const box b) const
//參見const物件的內容
void box::tocheck()//
顯示當前盒子的規格
void box::rebuild(float lenth,float width,float hight)//
重新定義長 寬 高
(3)main.cpp
//view code7.9.cpp : 定義控制台應用程式的入口點。
//#include
"stdafx.h
"#include
"box.h
"#include
using
std::cout;
using
std::endl;
using
std::cin;
bool check(float a,float b,float c)//
自定義了乙個函式
intmain()
const
box stylebox(lenth,width,hight);
cout
<
請輸入您的訂單個數:
"<
intcount;
while(cin>>count,!((count>0)&(count<6)))//
數字檢查
else
}box* boxarray ; //
定義了乙個指向物件的指標,注意:此種方法要有預設的建構函式,因為上來就會來幾個預設的物件,然後賦值
boxarray = new box[count]; //
動態物件陣列
//通過物件指標申請物件陣列
//這個陣列的名就叫boxarray
bool bok = false
;
for(int i=0;i)
}delete boxarray;//
刪除類成員時就用這種
return0;
}
C 入門經典 例7 7 物件與複製,菌類的繁殖
1 當函式以相應的類作為形參列表時,物件可以作為函式的引數傳入。在學習函式時,我們曾提過,值傳遞先複製實參產生副本。那麼物件的副本是怎樣的呢?複製建構函式是指類的物件被複製時所呼叫的函式。下面兩種情況中物件都會呼叫複製建構函式。1 將乙個物件賦值給另外乙個物件時。例如 物件1 物件2 物件1 物件2...
C 入門(7) 物件
類 屬性 方法 類名的第乙個字母一般採用大寫,類宣告的末尾必須加上分號 c 允許在類裡宣告常量,但不允許對它賦值,除非建立乙個靜態常量。構造器 1 構造器的名字和它所在類的名字一樣 2 系統會在建立出某個新例項之後,立刻自動呼叫這個類的構造器 3 構造器永遠不返回任何值。如果沒有在類裡定義乙個構造器...
3 5物件陣列 C
1.簡介 物件陣列和普通陣列沒有本質的區別,只不過普通陣列的元素是簡單變數,而物件陣列的元素是物件而已。物件陣列在實際中的主要應用在系統需要乙個類的多個物件的情況。例如需要建立100學生檔案,每個檔案包括姓名,性別,年齡等內容。例如下面 student students 宣告了100個學生陣列,系統...