• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            寶杉的博客

            UNIX/LINUX;ACE;SNMP;C++
            posts - 33, comments - 23, trackbacks - 0, articles - 0

            08-06 free和delete

            Posted on 2007-08-13 10:12 寶杉 閱讀(414) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): C++

            freedelete

            只是把指針?biāo)傅膬?nèi)存給釋放掉,但并沒(méi)有把指針本身干掉。

             

            注意:

            1)指針消亡了,并不表示它所指的內(nèi)存會(huì)被自動(dòng)釋放。

            2)內(nèi)存被釋放了,并不表示指針會(huì)消亡或者成了NULL指針。

            比較

            mallocfree:無(wú)法滿(mǎn)足動(dòng)態(tài)對(duì)象的要求。對(duì)象在創(chuàng)建同時(shí)進(jìn)行構(gòu)造,消亡同時(shí)析構(gòu)。

            malloc free是庫(kù)函數(shù),不是運(yùn)算符,不受編譯器控制。

            newdelete:不是庫(kù)函數(shù),能動(dòng)態(tài)內(nèi)存分配和清理內(nèi)存。

             

            內(nèi)存耗盡

            內(nèi)存耗盡時(shí)newmalloc返回NULL。但在WIN32下,使用虛擬內(nèi)存,不會(huì)耗盡的。

            處理內(nèi)存耗盡大概有兩種。

            A  *a = new A;

            1       一處內(nèi)存申請(qǐng)

            if(a == NULL)

            {

                 return;

                 }

            2    如果有多處申請(qǐng)內(nèi)存,則

            if(a == NULL)

            {

                 cout << Memory Exhausted << endl;

                 exit(1);

            }

             

            newdelete使用要點(diǎn)

            1 new內(nèi)置了sizeof、類(lèi)型轉(zhuǎn)換和類(lèi)型安全檢查功能。

            2 new在創(chuàng)建非內(nèi)部數(shù)據(jù)類(lèi)型的動(dòng)態(tài)對(duì)象的同時(shí)完成了初始化工作。

            3 對(duì)象有多個(gè)構(gòu)造函數(shù),那么new的語(yǔ)句也可以有多種形式。

            例如:diary files\obj.txt

            4 如果用new創(chuàng)建對(duì)象數(shù)組,那么只能使用對(duì)象的無(wú)參數(shù)構(gòu)造函數(shù)。例如

                 Obj  *objects = new Obj[100];    // 創(chuàng)建100個(gè)動(dòng)態(tài)對(duì)象

            不能寫(xiě)成

                 Obj  *objects = new Obj[100](1);// 創(chuàng)建100個(gè)動(dòng)態(tài)對(duì)象的同時(shí)賦初值1

            5在用delete釋放對(duì)象數(shù)組時(shí),留意不要丟了符號(hào)‘[]’。例如

                 delete []objects;  // 正確的用法

            delete objects;    // 錯(cuò)誤的用法

            后者相當(dāng)于delete objects[0],漏掉了另外99個(gè)對(duì)象。

            久久精品国产精品亚洲毛片| 久久无码人妻一区二区三区午夜| 国产午夜免费高清久久影院| 人妻无码精品久久亚瑟影视| 婷婷久久综合| 久久久久久毛片免费看| 亚洲精品高清国产一久久| 精品久久香蕉国产线看观看亚洲| 欧洲人妻丰满av无码久久不卡| 精品久久久无码人妻中文字幕| 婷婷久久五月天| 人妻无码精品久久亚瑟影视| 香蕉久久夜色精品国产2020| 伊人久久综合无码成人网| 亚洲中文字幕无码一久久区| 久久精品成人欧美大片| 午夜精品久久久久久久| 久久久一本精品99久久精品66| www性久久久com| 国产精品久久久久久久久鸭| 国产精品久久久久久| 久久久久无码精品国产app| 久久无码AV中文出轨人妻| 无码人妻少妇久久中文字幕| 国内精品伊人久久久影院| 亚洲级αV无码毛片久久精品 | 久久人人爽人爽人人爽av| 久久久久一本毛久久久| 久久精品青青草原伊人| 天天爽天天狠久久久综合麻豆| 久久九九有精品国产23百花影院| 精品久久久久久99人妻| 亚洲午夜久久久久久久久久| 97久久天天综合色天天综合色hd| 99久久免费只有精品国产| 亚洲午夜无码久久久久小说| 久久久婷婷五月亚洲97号色| 精品国产91久久久久久久a| 色综合久久综合中文综合网| 97超级碰碰碰碰久久久久| 久久综合九色综合网站|