国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

new分配內(nèi)存

2019-11-14 12:41:12
字體:
供稿:網(wǎng)友

指針真正的用武之處在于,在運(yùn)行階段分配未命名的內(nèi)存來儲(chǔ)存值,格式:

typeName * pointer_name = new typeName;

如:int * pn = new int;

new分配的內(nèi)存塊通常與常規(guī)變量聲明分配的內(nèi)存塊不同。變量存儲(chǔ)在棧(stack)中,new從被稱為堆(heap)或自由存儲(chǔ)區(qū)的內(nèi)存區(qū)域分配內(nèi)存。

使用完內(nèi)存后,需要將其歸還給內(nèi)存池:delete pn;

記住一定要配對(duì)地使用new和delete,否則將造成內(nèi)存泄漏。

不要使用delete釋放不是new分配的內(nèi)存,也不要嘗試釋放已經(jīng)釋放的內(nèi)存塊,C++標(biāo)準(zhǔn)指出,這樣的結(jié)果時(shí)不確定的。即不要delete兩次。不過,對(duì)空指針使用delete是安全的。

一般來說,不要?jiǎng)?chuàng)建兩個(gè)指向同一個(gè)內(nèi)存塊的指針,因?yàn)檫@將增加錯(cuò)誤地刪除同一個(gè)內(nèi)存塊兩次的可能性。

使用new創(chuàng)建動(dòng)態(tài)數(shù)組:

int * psome = new int [10]; //并返回第一個(gè)元素的地址

delete [] psome;

方括號(hào)告訴程序,應(yīng)該釋放整個(gè)數(shù)組,而不僅僅是指針指向的元素。如果使用new時(shí)不帶方括號(hào),則delete也不應(yīng)用方括號(hào);如果使用new時(shí)帶方括號(hào),則delete時(shí)要帶方括號(hào)。

注意psome + 1算術(shù)代表一個(gè)單元,增加量等于它指向的類型的字節(jié)數(shù)。

string類內(nèi)置new和delete。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 威信县| 贡觉县| 临汾市| 射阳县| 平昌县| 湖口县| 灵山县| 青田县| 永川市| 宽甸| 收藏| 静宁县| 克拉玛依市| 麻栗坡县| 台江县| 平原县| 石城县| 沧源| 留坝县| 黄石市| 甘泉县| 喀喇沁旗| 汶川县| 高台县| 聂荣县| 林周县| 兰坪| 万山特区| 固阳县| 大同县| 集贤县| 若羌县| 承德市| 呼图壁县| 怀集县| 闵行区| 广丰县| 威远县| 凯里市| 江西省| 松阳县|