久久久国产精品秘人口麻豆|永久免费AV无语国产|人成电影免费中文字幕|久久AV嫩草影院2

    1. <dfn id="yitbn"><samp id="yitbn"><progress id="yitbn"></progress></samp></dfn>

          <div id="yitbn"></div>

          1. 首頁(yè)考試吧論壇Exam8視線考試商城網(wǎng)絡(luò)課程模擬考試考友錄實(shí)用文檔求職招聘論文下載
            2013中考
            法律碩士
            2013高考
            MBA考試
            2013考研
            MPA考試
            在職研
            中科院
            考研培訓(xùn) 自學(xué)考試 成人高考
            四 六 級(jí)
            GRE考試
            攻碩英語(yǔ)
            零起點(diǎn)日語(yǔ)
            職稱(chēng)英語(yǔ)
            口譯筆譯
            申碩英語(yǔ)
            零起點(diǎn)韓語(yǔ)
            商務(wù)英語(yǔ)
            日語(yǔ)等級(jí)
            GMAT考試
            公共英語(yǔ)
            職稱(chēng)日語(yǔ)
            新概念英語(yǔ)
            專(zhuān)四專(zhuān)八
            博思考試
            零起點(diǎn)英語(yǔ)
            托?荚
            托業(yè)考試
            零起點(diǎn)法語(yǔ)
            雅思考試
            成人英語(yǔ)三級(jí)
            零起點(diǎn)德語(yǔ)
            等級(jí)考試
            華為認(rèn)證
            水平考試
            Java認(rèn)證
            職稱(chēng)計(jì)算機(jī) 微軟認(rèn)證 思科認(rèn)證 Oracle認(rèn)證 Linux認(rèn)證
            公 務(wù) 員
            導(dǎo)游考試
            物 流 師
            出版資格
            單 證 員
            報(bào) 關(guān) 員
            外 銷(xiāo) 員
            價(jià)格鑒證
            網(wǎng)絡(luò)編輯
            駕 駛 員
            報(bào)檢員
            法律顧問(wèn)
            管理咨詢(xún)
            企業(yè)培訓(xùn)
            社會(huì)工作者
            銀行從業(yè)
            教師資格
            營(yíng)養(yǎng)師
            保險(xiǎn)從業(yè)
            普 通 話
            證券從業(yè)
            跟 單 員
            秘書(shū)資格
            電子商務(wù)
            期貨考試
            國(guó)際商務(wù)
            心理咨詢(xún)
            營(yíng) 銷(xiāo) 師
            司法考試
            國(guó)際貨運(yùn)代理人
            人力資源管理師
            廣告師職業(yè)水平
            衛(wèi)生資格 執(zhí)業(yè)醫(yī)師 執(zhí)業(yè)藥師 執(zhí)業(yè)護(hù)士
            會(huì)計(jì)從業(yè)資格
            基金從業(yè)資格
            統(tǒng)計(jì)從業(yè)資格
            經(jīng)濟(jì)師
            精算師
            統(tǒng)計(jì)師
            會(huì)計(jì)職稱(chēng)
            法律顧問(wèn)
            ACCA考試
            注冊(cè)會(huì)計(jì)師
            資產(chǎn)評(píng)估師
            審計(jì)師考試
            高級(jí)會(huì)計(jì)師
            注冊(cè)稅務(wù)師
            國(guó)際內(nèi)審師
            理財(cái)規(guī)劃師
            美國(guó)注冊(cè)會(huì)計(jì)師
            一級(jí)建造師
            安全工程師
            設(shè)備監(jiān)理師
            公路監(jiān)理師
            公路造價(jià)師
            二級(jí)建造師
            招標(biāo)師考試
            物業(yè)管理師
            電氣工程師
            建筑師考試
            造價(jià)工程師
            注冊(cè)測(cè)繪師
            質(zhì)量工程師
            巖土工程師
            造價(jià)員考試
            注冊(cè)計(jì)量師
            環(huán)保工程師
            化工工程師
            咨詢(xún)工程師
            結(jié)構(gòu)工程師
            城市規(guī)劃師
            材料員考試
            監(jiān)理工程師
            房地產(chǎn)估價(jià)
            土地估價(jià)師
            安全評(píng)價(jià)師
            房地產(chǎn)經(jīng)紀(jì)人
            投資項(xiàng)目管理師
            環(huán)境影響評(píng)價(jià)師
            土地登記代理人
            繽紛校園 實(shí)用文檔 英語(yǔ)學(xué)習(xí) 作文大全 求職招聘 論文下載 訪談|游戲
            計(jì)算機(jī)等級(jí)考試

            2013計(jì)算機(jī)等考二級(jí)C++考點(diǎn)歸納:數(shù)組、指針與引用

              第4章 數(shù)組、指針與引用

              4.1 數(shù)組

              1一維數(shù)組

              (1)一維數(shù)組的定義

              一維數(shù)組是由具有一個(gè)下標(biāo)的數(shù)組元素組成的數(shù)組,其定義形式如下:

              <數(shù)據(jù)類(lèi)型><數(shù)組名>[<數(shù)組長(zhǎng)度>];

              在此,<數(shù)據(jù)類(lèi)型>是類(lèi)型說(shuō)明符,<數(shù)組名>是數(shù)組的名字,<數(shù)組長(zhǎng)度>是任一值為正整數(shù)的int型常量表達(dá)式。<數(shù)組長(zhǎng)度>用來(lái)指定數(shù)組中元素的個(gè)數(shù),即數(shù)組的大小,數(shù)組元素的下標(biāo)是從0到<數(shù)組長(zhǎng)度>-1。

              (2)一維數(shù)組初始化

              與所有的基本數(shù)據(jù)類(lèi)型相同,數(shù)組也可以在時(shí)初始化。

              當(dāng)數(shù)組聲明沒(méi)有給出數(shù)組的大小,但是有初始化列表時(shí),數(shù)組的大小就由列表中元素的個(gè)數(shù)來(lái)確定。

              在定義數(shù)組時(shí),可以不必給出所有數(shù)組元素的初始值,即在定義時(shí)部分地初始化數(shù)組。

              (3)訪問(wèn)數(shù)組元素

              訪問(wèn)數(shù)組元素的語(yǔ)法形式是:

              <數(shù)組名>[<表達(dá)式>]

              在此,<表達(dá)式>是非負(fù)的int型表達(dá)式,稱(chēng)為下標(biāo)。下標(biāo)用于指定所要訪問(wèn)的數(shù)組中元素的位置。在C+ +中,[]是一個(gè)運(yùn)算符,稱(chēng)為下標(biāo)運(yùn)算符。數(shù)組下標(biāo)從0開(kāi)始,長(zhǎng)度為n的數(shù)組,其下標(biāo)的范圍是0到n-1。在數(shù)組定義以后,給數(shù)組賦值時(shí),必須一個(gè)元素一個(gè)元素的逐個(gè)訪問(wèn)。

              2二維數(shù)組

              以行和列(即二維)形式排列的固定數(shù)目元素的集合,并且組成數(shù)組的每個(gè)元素的類(lèi)型都相同,即帶有兩個(gè)下標(biāo)的數(shù)組。

              (1)二維數(shù)組的定義

              定義二維數(shù)組的語(yǔ)法是:

              <數(shù)據(jù)類(lèi)型><數(shù)組名>[<表達(dá)式1>][<表達(dá)式2>];

              在此<表達(dá)式1>和<表達(dá)式2>是值為正整數(shù)的常量表達(dá)式。表達(dá)式<表達(dá)式1>和<表達(dá)式2>,分別用來(lái)指定數(shù)組中行和列的數(shù)目。

              (2)二維數(shù)組初始化

              與一維數(shù)組相同,二維數(shù)組也可以在定義時(shí)初始化。

              在定義時(shí)初始化二維數(shù)組要注意:

             、偎性谝恍兄械脑乜梢杂没ɡㄌ(hào)括起來(lái),并且用逗號(hào)分隔;

             、趯(duì)于數(shù)字類(lèi)型數(shù)組,如果給定的數(shù)值不夠,則沒(méi)有指定數(shù)值的元素將初始化為0。此時(shí),至少應(yīng)有一個(gè)值來(lái)初始化二維數(shù)組。

             、郛(dāng)數(shù)組聲明時(shí)沒(méi)有給出第一維的大小,但是有初始化列表時(shí),第一維的大小就由列表中子列表的個(gè)數(shù)來(lái)確定。

              (3)訪問(wèn)二維數(shù)組元素

              若要訪問(wèn)二維數(shù)組的元素,必須要給出兩個(gè)下標(biāo):一個(gè)行下標(biāo)和一個(gè)列下標(biāo)。訪問(wèn)二維數(shù)組元素的語(yǔ)法是:

              <數(shù)組名>[<表達(dá)式1>][表達(dá)式2];

              這里<表達(dá)式1>和<表達(dá)式2>是值為非負(fù)整數(shù)的表達(dá)式。<表達(dá)式1>指定行下標(biāo),<表達(dá)式2>指定列下標(biāo)。

              (3)多維數(shù)組

              在C+ +中,對(duì)數(shù)組維數(shù)沒(méi)有限制。下面是對(duì)數(shù)組的通用定義。

              以n維列表形式排列的固定數(shù)目元素的集合,稱(chēng)為n維數(shù)組。定義n維數(shù)組的語(yǔ)法是:

              <數(shù)據(jù)類(lèi)型><數(shù)組名>[<表達(dá)式1>][<表達(dá)式2>]…[<表達(dá)式n>];

              在此<表達(dá)式1>,<表達(dá)式2>,…<表達(dá)式n>都是值為正整數(shù)的常量表達(dá)式。

              訪問(wèn)n維數(shù)組元素的語(yǔ)法是:

              <數(shù)組名>[<表達(dá)式1>][<表達(dá)式2>]…[<表達(dá)式n>];

              在此<表達(dá)式1>,<表達(dá)式2>,…<表達(dá)式n>都是值為非負(fù)整數(shù)的表達(dá)式。<表達(dá)式i>(i=1,2,…,n)用來(lái)指定第i維元素的位置。

              在將多維數(shù)組作為函數(shù)的形參時(shí),可以不指定該數(shù)組中第一維的大小,但是必須指定該數(shù)組中其他維的大小。多維數(shù)組只可以作為引用參數(shù)傳遞給函數(shù),并且函數(shù)不能返回一個(gè)數(shù)組類(lèi)型的返回值。C+ +對(duì)數(shù)組下標(biāo)不做檢查。

              4字符數(shù)組

              (1)string類(lèi)型與字符數(shù)組

              string類(lèi)型在ANSI/ISO標(biāo)準(zhǔn)C+ +頒布之前,標(biāo)準(zhǔn)C+ +庫(kù)并不提供string數(shù)據(jù)類(lèi)型。string是一種用戶(hù)自定義的數(shù)據(jù)類(lèi)型,它由C+ +標(biāo)準(zhǔn)庫(kù)來(lái)支持,而不是C+ +語(yǔ)言本身的一部分。在使用strign數(shù)據(jù)類(lèi)型之前,需要在程序中包含頭文件string并聲明其所在的名字空間std。所有元素都是char類(lèi)型的數(shù)組稱(chēng)為字符數(shù)組。

              字符數(shù)組有如下特點(diǎn):

             、贁(shù)組元素跟一般變量一樣可以賦值、比較、計(jì)算等。

             、跀(shù)組下標(biāo)也是從0~N-1(N為數(shù)組長(zhǎng)度)。

              ③字符數(shù)組長(zhǎng)度可以顯式給出,也可以隱式得到。

             、苡呻p引號(hào)括起來(lái)的字符串常量具有靜態(tài)字符串?dāng)?shù)組類(lèi)型。

              ⑤用字符串對(duì)數(shù)組初始化時(shí),編譯程序以′\0′作為結(jié)束這個(gè)數(shù)組的標(biāo)志。因此,數(shù)組長(zhǎng)度至少要比字符串長(zhǎng)度多1。

              (2)常用字符串函數(shù)

              C+ +提供了一系列字符串操作的函數(shù),這些函數(shù)都包含在頭文件cstring中。其中經(jīng)常會(huì)用到的字符串函數(shù)包括:strcpy(字符串拷貝,將一個(gè)字符串拷貝到另一個(gè)字符串變量中)、strcat(字符串連接,在字符串末端添加字符串)、strcmp(字符串比較,用來(lái)比較字符串)、strlen(字符串長(zhǎng)度,用來(lái)求出字符串長(zhǎng)度)、和strstr(字符串查找,在一個(gè)字符串中查找子串)。

              ①strcpy函數(shù)

              調(diào)用strcpy()函數(shù)的一般形式為:

              strcpy(to,from);

              該函數(shù)將from字符串中的內(nèi)容復(fù)制到to字符串中。請(qǐng)記住,構(gòu)成to的字符串必須足夠大,以便保存包含在from中的字符串。否則,to字符串將會(huì)溢出,這很可能會(huì)導(dǎo)致系統(tǒng)崩潰。

             、趕trcat函數(shù)

              調(diào)用strcat()函數(shù)的一般形式為:

              strcat(s1,s2);

              該函數(shù)將字符串s2添加到字符串s1的末端;但并不修改字符串s2。必須確保字符串s1足夠大,以便保存它自己的內(nèi)容和字符串s2中的內(nèi)容。

             、踫trcmp函數(shù)

              調(diào)用strcmp()函數(shù)的一般形式為:

              strcmp(s1,s2);

              該函數(shù)比較兩個(gè)字符串,如果兩個(gè)字符串相等,返回0。如果字符串s1在字典順序上比字符串s2大,則返回一個(gè)正數(shù);如果比字符串s2小,則返回一個(gè)負(fù)數(shù)。

              注意:函數(shù)strcmp比較兩個(gè)字符串時(shí)所采用的字典順序與真正意義上的字典順序還是有些差別的。實(shí)際上,它依次比較兩個(gè)字符串相應(yīng)字符的編碼值(如ASCII碼值)來(lái)決定兩個(gè)字符串的大小。如,上面比較strcmp(″A″,″a″)的結(jié)果變?yōu)?1,因?yàn)樽址銩′的編碼值為65,而字符′a′的編碼值為97,這與傳統(tǒng)意義上的字典順序不同。

             、躶trlen函數(shù)

              調(diào)用strlen()函數(shù)的一般形式為:

              strlen(s);

              該函數(shù)返回字符串s的長(zhǎng)度,即字符串中字符的個(gè)數(shù)(不包括字符串結(jié)尾的′\ 0′)。

              ⑤strstr函數(shù)

              調(diào)用strstr()函數(shù)的一般形式為:

              strstr(s1,s2);

              該函數(shù)在字符串s1中從左邊開(kāi)始查找字符串s2,若查找成功則返回s2在s1中首次出現(xiàn)的位置,否則返回NULL,如果s2為″ ″,則返回s1。

              4.2 指針

              指針(即指針變量)是C+ +語(yǔ)言最大的功能之一。一個(gè)指針是一個(gè)特定類(lèi)型數(shù)據(jù)的存儲(chǔ)地址,比如一個(gè)變量的地址。

              與其他類(lèi)型變量一樣,指針變量也必須要聲明。指針變量聲明的一般形式為:

              <數(shù)據(jù)類(lèi)型>*<變量名>;

              其中,<數(shù)據(jù)類(lèi)型>是指針?biāo)笇?duì)象的類(lèi)型,在C+ +中可以指向任何C+ +類(lèi)型。<變量名>是指針變量名。

              指針使用兩種特殊的運(yùn)算符——*和&。

              一元(單目)運(yùn)算符&用于返回其操作對(duì)象的內(nèi)存地址,其操作對(duì)象通常為一個(gè)變量名。例如:

              ptr=&total;

              把變量total的內(nèi)存地址存到指針變量ptr中。該地址是total變量在計(jì)算機(jī)內(nèi)存中的存儲(chǔ)地址。

              第二個(gè)與指針相關(guān)的運(yùn)算符是*,它與&運(yùn)算符作用相反。作為一元運(yùn)算符的*用于返回其操作數(shù)所指對(duì)象的值,因此,該運(yùn)算符要求其操作對(duì)象為一個(gè)指針。

              1指針和地址

              (1)指針說(shuō)明

              從指針的定義可知,指針是用所指對(duì)象類(lèi)型來(lái)表征的。在使用任何指針變量之前必須先給它賦一個(gè)所指合法具體對(duì)象的地址值。

              如何使一個(gè)指針指向一個(gè)具體對(duì)象:

              ①使用new運(yùn)算符(或malloc和alloc等函數(shù))給指針?lè)峙湟粋(gè)具體空間。

              ②將另一個(gè)同類(lèi)型的指針賦給它以獲得值。

              ③通過(guò)&運(yùn)算符指向某個(gè)對(duì)象。

              (2)指針運(yùn)算

              盡管指針中存放的是變量的地址,但在C+ +中指針只能進(jìn)行如下運(yùn)算。

             、僦羔樅驼土靠梢赃M(jìn)行加減

             、谌魀1,p2為指針,當(dāng)p1和p2指向同一類(lèi)型時(shí),可以進(jìn)行賦值。

              ③兩個(gè)指向同一類(lèi)型的指針,可進(jìn)行= =,>,<等關(guān)系運(yùn)算,其實(shí)就是地址的比較。

             、軆蓚(gè)指向同一數(shù)組成員的指針可進(jìn)行相減,結(jié)果為兩個(gè)指針之間相差元素的個(gè)數(shù)。

              注意:兩指針不能相加。

              2指針和數(shù)組

              在C+ +中,指針和數(shù)組的關(guān)系極為密切。實(shí)際上,數(shù)組的參數(shù)傳遞、數(shù)組元素的存取,都可通過(guò)指針操作來(lái)完成。指針和數(shù)組常?梢曰Q。

              在C+ +中,數(shù)組的名字就是指向該數(shù)組第一個(gè)元素(下標(biāo)為0)的指針,即該數(shù)組第一個(gè)元素的地址,也即數(shù)組的首地址。

              一般情況下,一個(gè)數(shù)組元素的下標(biāo)訪問(wèn)a[i]等價(jià)于相應(yīng)的指針訪問(wèn)*(a+i)。但特別注意:數(shù)組名和指針(變量)是有區(qū)別的,前者是常量,即數(shù)組名是一個(gè)常量指針,而后者是指針變量。因此,盡管我們可寫(xiě)pa=a;但不能寫(xiě):a=pa;或pa=&a;因?yàn)槲覀儾荒芨淖兂A康闹,也不能取常量的地址?/P>

              數(shù)組名可作為參數(shù)進(jìn)行傳遞。當(dāng)將數(shù)組名傳給函數(shù)時(shí),實(shí)際上所傳遞的是數(shù)組的開(kāi)始地址。(即數(shù)組第一個(gè)元素的地址)

              為什么要使用指針?簡(jiǎn)單地說(shuō)指針運(yùn)算比數(shù)組運(yùn)算的速度快。

              此外,使用指針的另外一個(gè)原因是在大量數(shù)據(jù)傳遞時(shí),使用傳遞指針要遠(yuǎn)比傳遞數(shù)據(jù)本身效率高的多,如在函數(shù)參數(shù)傳遞及函數(shù)返回值時(shí)。當(dāng)然,使用指針會(huì)給程序帶來(lái)安全隱患(如指針懸掛問(wèn)題),同時(shí)還使得程序的可讀性降低(顯然,用數(shù)組實(shí)現(xiàn)的程序要比用指針實(shí)現(xiàn)的程序的可讀性要好)。

              對(duì)于字符串常量,可以把它看成是一個(gè)無(wú)名字符數(shù)組,C+ +編譯程序會(huì)自動(dòng)為它分配一個(gè)空間來(lái)存放這個(gè)常量,字符串常量的值本身就是指向這個(gè)無(wú)名字符數(shù)組的第一個(gè)字符的指針,其類(lèi)型是字符指針。

              3指針數(shù)組和函數(shù)指針

              (1)指針數(shù)組

              指針數(shù)組就是由指針組成的數(shù)組,即數(shù)組中的每一個(gè)元素都是指向同一類(lèi)型對(duì)象的指針。

              指針數(shù)組可以是全局的、靜態(tài)的和局部的。字符指針數(shù)組和二維字符數(shù)組在許多方面是一樣的,如初始化形式、成員訪問(wèn)方式,因此我們有必要了解它們的區(qū)別和各自的使用場(chǎng)合。

              盡管二維字符數(shù)組與字符指針數(shù)組在存儲(chǔ)形式上不同,但它們?cè)诔跏蓟问揭约霸L問(wèn)元素方式上卻是相同的。

              采用指針數(shù)組的理由是:它可以節(jié)省存貯空間,因而通常用來(lái)存放不同長(zhǎng)度的字符串。例如,如果要保存從標(biāo)準(zhǔn)輸入或文件中讀入的行,字符指針數(shù)組是一個(gè)好的選擇。因?yàn)樽x入的行可能長(zhǎng)短差異很大。

              (2)命令行參數(shù)

              在C+ +中可以實(shí)現(xiàn)帶有命令行參數(shù)的程序,它是通過(guò)main帶有參數(shù)來(lái)實(shí)現(xiàn)的。

              在C+ +中,主函數(shù)main還可以帶有參數(shù),形式如下:

              int main(int argc,char * argv[])

              或int main(int argc,char * * argv[])

              其中:

              argc為包含命令本身在內(nèi)的參數(shù)個(gè)數(shù)。

              argc為指針數(shù)組,數(shù)組元素為指向各參數(shù)(包含命令本身在內(nèi))的指針。

              (3)函數(shù)指針

              在C+ +中,允許指針指向一個(gè)函數(shù),即指向函數(shù)的指針。函數(shù)指針的說(shuō)明形式為:

              類(lèi)型(*標(biāo)識(shí)符)();

              例如:int (* fp)();定義了一個(gè)指向返回值為整型值的函數(shù)的指針fp。

              注意:int(*fp)();與int*fp();的不同在于,前者是函數(shù)指針,后者為返回指向int指針的函數(shù)。

              與其他類(lèi)型的指針變量一樣,在使用函數(shù)指針前必須使它指向一個(gè)具體的函數(shù)。若要函數(shù)指針指向一個(gè)具體函數(shù),可通過(guò)賦值語(yǔ)句或參數(shù)傳遞。

              函數(shù)指針=函數(shù)名;

              該賦值語(yǔ)句將使一個(gè)函數(shù)指針指向一個(gè)具體函數(shù)(在C+ +中,函數(shù)名是作為指向函數(shù)的指針值來(lái)處理)。函數(shù)指針的最大用途是它可以使得一個(gè)函數(shù)作為其他函數(shù)的參數(shù)進(jìn)行傳遞,擴(kuò)展了函數(shù)的功能。

              4.3 引用

              1引用的概念

              引用是個(gè)別名,建立時(shí)須用另一個(gè)數(shù)據(jù)對(duì)象(如一個(gè)變量)的名字進(jìn)行初始化,以指定該引用所代表的數(shù)據(jù)對(duì)象。此后,對(duì)引用的任何實(shí)操作實(shí)際上就是對(duì)所代表的數(shù)據(jù)對(duì)象的操作。一個(gè)引用變量要占用相當(dāng)于一個(gè)指針?biāo)枰目臻g,但系統(tǒng)不會(huì)為它所代表的數(shù)據(jù)對(duì)象再次分配空間。

              在類(lèi)型名后跟引用運(yùn)算符“&”,以及引用名來(lái)創(chuàng)建一個(gè)引用。引用名就是一個(gè)變量名。

              注意:引用運(yùn)算符與地址操作符使用相同的符號(hào)(即運(yùn)算符重載),但它們含義不一樣。引用運(yùn)算符只在聲明變量的時(shí)候使用,它放在類(lèi)型名后面。

              使用引用時(shí)應(yīng)遵循一定的規(guī)則:

              (1)引用被創(chuàng)建時(shí),它必須立即被初始化(指針則可以在任何時(shí)候被初始化)。

              (2)一旦一個(gè)引用被初始化為一個(gè)對(duì)象的引用,它就不能再被改變?yōu)閷?duì)另一個(gè)對(duì)象的引用。(指針則可以在任何時(shí)候改變?yōu)橹赶蛄硪粋(gè)對(duì)象。)

              (3)不可能有NULL引用。必須確保引用是具體合法的對(duì)象的引用(即引用應(yīng)和一塊合法的存儲(chǔ)空間關(guān)聯(lián))。

              2用引用傳遞函數(shù)參數(shù)

              引用的一個(gè)重要用途就是作為函數(shù)的參數(shù)。在C+ +中,函數(shù)參數(shù)傳遞采用的是傳值,如果要有占用空間大的對(duì)象(例如一個(gè)大的結(jié)構(gòu)對(duì)象或類(lèi)對(duì)象)需要作為函數(shù)參數(shù)傳遞的時(shí)候,在C語(yǔ)言中的做法往往是使用指針,因?yàn)檫@樣可以避免將整個(gè)實(shí)參對(duì)象數(shù)據(jù)全部拷貝給形式參數(shù),可以提高程序的執(zhí)行效率。在C+ +中,既可以使用指針,但由于C+ +引入了引用概念,亦可以用引用來(lái)做同樣的事情。引用作為參數(shù)的最大好處是:引用參數(shù)既可以像指針那樣工作,其使用方式又和一般變量相同。也就是說(shuō),引用比指針具有更好的可讀性。

              4.4 動(dòng)態(tài)存儲(chǔ)分配

              動(dòng)態(tài)存儲(chǔ)分配功能在C+ +中是通過(guò)new和delete運(yùn)算符來(lái)實(shí)現(xiàn)的。

              1使用new獲得動(dòng)態(tài)內(nèi)存空間

              運(yùn)算符new用于申請(qǐng)動(dòng)態(tài)存儲(chǔ)空間,它的操作數(shù)為某種數(shù)據(jù)類(lèi)型且可以帶有初值表達(dá)式或元素個(gè)數(shù)。new返回一個(gè)指向其操作類(lèi)型變量的指針。使用new對(duì)某種類(lèi)型變量進(jìn)行動(dòng)態(tài)分配的語(yǔ)法格式為:

              <指針>=new<類(lèi)型>;

              其中,<類(lèi)型>表示要分配的變量類(lèi)型(如char、int、double);<指針>表示指向<類(lèi)型>類(lèi)型變量的指針(如char*、int*、double*等)。

              2使用delete釋放動(dòng)態(tài)內(nèi)存空間

              當(dāng)動(dòng)態(tài)分配的內(nèi)存空間在程序中使用完畢之后,必須顯式地將它們釋放。這樣做的目的是把閑置不用的堆內(nèi)存歸還給系統(tǒng),使其可以被系統(tǒng)重新分配。在C+ +程序中由new分配的動(dòng)態(tài)內(nèi)存空間必須通過(guò)delete運(yùn)算符釋放。使用delete對(duì)動(dòng)態(tài)分配的單個(gè)變量進(jìn)行釋放的語(yǔ)法格式為:

              delete<指針>;

              其中,<指針>表示指向單個(gè)變量的指針。

              使用delete對(duì)動(dòng)態(tài)分配的數(shù)組進(jìn)行釋放的語(yǔ)法格式為:

              delete[]<指針>;

              其中,<指針>表示指向數(shù)組首元素的指針。delete之后的方括號(hào)指明將要釋放的內(nèi)存空間中存儲(chǔ)著數(shù)組元素。程序中需要分配動(dòng)態(tài)內(nèi)存空間,則new和delete總是成對(duì)出現(xiàn)的。

            文章搜索
            版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@eeeigo.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。