6.9 對(duì)象數(shù)組
對(duì)象數(shù)組是指數(shù)組元素為對(duì)象的數(shù)組,該數(shù)組中的每一個(gè)元素都是同一個(gè)類的對(duì)象。
對(duì)象數(shù)組的定義格式如下:
<類名><數(shù)組名>[<大小>]……
使用對(duì)象數(shù)組成員的一般格式是:
<數(shù)組名>[<下標(biāo)>].<成員名>
6.10 成員對(duì)象
類的數(shù)據(jù)成員可以是簡(jiǎn)單類型或自定義類型,也可以是類類型的對(duì)象。因此,可以利用已定義的類來構(gòu)成新的類,使得一些復(fù)雜的類可以由一些簡(jiǎn)單類組合而成。類的聚集,描述的就是一個(gè)類內(nèi)嵌其他類的對(duì)象作為成員的情況。
當(dāng)一個(gè)類的成員是另外一個(gè)類的對(duì)象時(shí),該對(duì)象就稱為成員對(duì)象。當(dāng)類中出現(xiàn)了成員對(duì)象時(shí),該類的構(gòu)造函數(shù)要包含對(duì)成員對(duì)象的初始化,通常采用成員初始化列表的方法來初始化成員對(duì)象。定義的一般格式如下:
<類名>::<類名>(<總形參表>):<成員對(duì)象1>(<形參表1>),<成員對(duì)象2>(<形參表2<),…
{
//類成員的初始化
}
建立一個(gè)類的對(duì)象時(shí),要調(diào)用它的構(gòu)造函數(shù)。如果這個(gè)類有成員對(duì)象,要首先執(zhí)行所有的成員對(duì)象的構(gòu)造函數(shù),當(dāng)全部成員對(duì)象的初始化都完成之后,再執(zhí)行當(dāng)前類的構(gòu)造函數(shù)體。析構(gòu)函數(shù)的執(zhí)行順序與構(gòu)造函數(shù)的執(zhí)行順序相反。
當(dāng)類中有多個(gè)成員對(duì)象時(shí),要按照定義成員對(duì)象的順序建立各個(gè)子對(duì)象,即成員對(duì)象構(gòu)造函數(shù)的執(zhí)行順序僅與成員對(duì)象在類中聲明的順序有關(guān),而與成員初始化列表中給出的成員對(duì)象的順序無(wú)關(guān)。
如果在構(gòu)造函數(shù)的成員初始化列表中沒有給出對(duì)成員對(duì)象的初始化,則表示使用成員對(duì)象的缺省構(gòu)造函數(shù)。如果成員對(duì)象所在的類沒有缺省構(gòu)造函數(shù),將產(chǎn)生錯(cuò)誤。如果所有的成員對(duì)象都是調(diào)用缺省構(gòu)造函數(shù)建立的,那么該類的構(gòu)造函數(shù)的成員初始化列表可以省略。
編輯推薦:
2014年上半年計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間預(yù)告
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |