W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
作為一個(gè)復(fù)合結(jié)構(gòu)的簡單例子,可以考慮數(shù)學(xué)中點(diǎn)的概念。在一個(gè)層面上,點(diǎn)是我們以之作為一個(gè)對(duì)象的兩個(gè)數(shù)字,即坐標(biāo)。在數(shù)學(xué)符號(hào)中,點(diǎn)用括號(hào)中以逗號(hào)分隔的坐標(biāo)表示。例如,(0,0)表示原點(diǎn),(x,y)表示該點(diǎn)從原點(diǎn)起向右x個(gè)單位,向上y個(gè)單位。
在C++中,點(diǎn)可以很自然地以兩個(gè)double表示。那么,問題是如何把這兩個(gè)值組合成一個(gè)復(fù)合對(duì)象或結(jié)構(gòu)呢?答案是結(jié)構(gòu)體定義:
struct Point {
double x, y;
};
結(jié)構(gòu)體定義出現(xiàn)在任何函數(shù)定義的外面,通常是在程序的開頭(include語句之后)。
該定義表明,這個(gè)結(jié)構(gòu)中體中有兩個(gè)元素,分別命名為x和y。這些元素稱為實(shí)例變量,原因我稍后將作出解釋。
忘掉結(jié)構(gòu)體定義末尾的分號(hào)是一種常見錯(cuò)誤。在大括號(hào)之后放置一個(gè)分號(hào)可能很奇怪,但你會(huì)習(xí)慣的。
定義了新的結(jié)構(gòu)體之后,就可以使用該類型創(chuàng)建變量了:
Point blank;
blank.x = 3.0;
blank.y = 4.0;
第一行是常見的變量聲明:blank是Point類型。接下來的兩行初始化結(jié)構(gòu)體的實(shí)例變量。 這里使用的點(diǎn)記號(hào)與對(duì)象上調(diào)用函數(shù)的語法類似,如fruit.length()中的用法。當(dāng)然,不同的是,函數(shù)名后面總是跟著一個(gè)參數(shù)列表,即使列表為空。
賦值的結(jié)果可以用下面的狀態(tài)圖表示:
照例,變量名blank在框外,而變量的值在框內(nèi)。這里,這個(gè)值是一個(gè)復(fù)合對(duì)象,它由兩個(gè)有名字的實(shí)例變量構(gòu)成。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: