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

首頁 > 學院 > 開發設計 > 正文

new分配內存

2019-11-14 11:13:33
字體:
來源:轉載
供稿:網友

指針真正的用武之處在于,在運行階段分配未命名的內存來儲存值,格式:

typeName * pointer_name = new typeName;

如:int * pn = new int;

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

使用完內存后,需要將其歸還給內存池:delete pn;

記住一定要配對地使用new和delete,否則將造成內存泄漏。

不要使用delete釋放不是new分配的內存,也不要嘗試釋放已經釋放的內存塊,C++標準指出,這樣的結果時不確定的。即不要delete兩次。不過,對空指針使用delete是安全的。

一般來說,不要創建兩個指向同一個內存塊的指針,因為這將增加錯誤地刪除同一個內存塊兩次的可能性。

使用new創建動態數組:

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

delete [] psome;

方括號告訴程序,應該釋放整個數組,而不僅僅是指針指向的元素。如果使用new時不帶方括號,則delete也不應用方括號;如果使用new時帶方括號,則delete時要帶方括號。

注意psome + 1算術代表一個單元,增加量等于它指向的類型的字節數。

string類內置new和delete。


上一篇:算法

下一篇:python中的字典學習

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 扶余县| 鄂州市| 泗阳县| 色达县| 吕梁市| 扎兰屯市| 香河县| 邹城市| 永清县| 宜昌市| 喀喇| 闽清县| 崇义县| 自治县| 绥中县| 康平县| 麟游县| 合江县| 咸宁市| 四川省| 吉木乃县| 东阳市| 灵台县| 确山县| 绥滨县| 泸溪县| 赣州市| 凭祥市| 英吉沙县| 龙门县| 饶平县| 武陟县| 麻城市| 襄垣县| 岫岩| 仪陇县| 池州市| 安顺市| 梅河口市| 滦平县| 通化市|