• <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>

            單鏈DNA

            換了個(gè)地址:http://www.cnblogs.com/vizhen/

             

            new和delete與malloc和free的異同

            new和delete與malloc和free的異同

            7 11 2010

            相同點(diǎn):它們都可以用來申請(qǐng)動(dòng)態(tài)內(nèi)存和是否內(nèi)存。
            不同點(diǎn):1.malloc和free是C/C++語(yǔ)言的標(biāo)準(zhǔn)庫(kù)函數(shù),new和delete是C++中的運(yùn)算符。
            2.對(duì)于非內(nèi)部對(duì)象類型而言,malloc和free無(wú)法滿足要求,對(duì)象在創(chuàng)建的同時(shí)需要自動(dòng)執(zhí)行構(gòu)造函數(shù),在銷毀之前需要自動(dòng)執(zhí)行析構(gòu)函數(shù)。由于 malloc和free是庫(kù)函數(shù)而不是運(yùn)算符,不在編譯器控制權(quán)限之內(nèi),不能夠把執(zhí)行構(gòu)造函數(shù)和析構(gòu)函數(shù)強(qiáng)加給malloc和free。
            3.函數(shù)malloc原型:
            void* malloc(size_t size);用malloc 申請(qǐng)一塊長(zhǎng)度為length 的整數(shù)類型的內(nèi)存,程序如下:int *p = (int *) malloc(sizeof(int) * length);我們應(yīng)當(dāng)把注意力集中在兩個(gè)要素上:“類型轉(zhuǎn)換”和“sizeof”。
            1. malloc 返回值的類型是void *,所以在調(diào)用malloc 時(shí)要顯式地進(jìn)行類型轉(zhuǎn)換,將void * 轉(zhuǎn)換成所需要的指針類型。
            2.malloc 函數(shù)本身并不識(shí)別要申請(qǐng)的內(nèi)存是什么類型,它只關(guān)心內(nèi)存的總字節(jié)數(shù)。
            函數(shù)free 的原型如下:void free( void * memblock );為什么free 函數(shù)不象malloc 函數(shù)那樣復(fù)雜呢?這是因?yàn)橹羔榩 的類型以及它所指的內(nèi)存的容量事先都是知道的,語(yǔ)句free(p)能正確地釋放內(nèi)存。如果p 是NULL 指針,那么free對(duì)p 無(wú)論操作多少次都不會(huì)出問題。如果p 不是NULL 指針,那么free 對(duì)p連續(xù)操作兩次就會(huì)導(dǎo)致程序運(yùn)行錯(cuò)誤。
            4.new/delete 的使用要點(diǎn)
            運(yùn)算符new 使用起來要比函數(shù)malloc 簡(jiǎn)單得多,例如:
            int *p1 = (int *)malloc(sizeof(int) * length);
            int *p2 = new int[length];

            這是因?yàn)閚ew 內(nèi)置了sizeof、類型轉(zhuǎn)換和類型安全檢查功能。對(duì)于非內(nèi)部數(shù)據(jù)類型的對(duì)象而言,new 在創(chuàng)建動(dòng)態(tài)對(duì)象的同時(shí)完成了初始化工作。如果對(duì)象有多個(gè)構(gòu)造函數(shù),那么new 的語(yǔ)句也可以有多種形式。

            posted on 2010-11-24 00:47 Geek.tan 閱讀(281) 評(píng)論(0)  編輯 收藏 引用 所屬分類: C++

            導(dǎo)航

            統(tǒng)計(jì)

            公告

            coding是我的寂寞,我是誰(shuí)的寂寞

            隨筆分類(40)

            隨筆檔案(48)

            搜索

            積分與排名

            最新評(píng)論

            評(píng)論排行榜

            久久99国产精品尤物| 久久天天躁夜夜躁狠狠躁2022| 久久精品一区二区三区AV| 99久久国产综合精品女同图片| 97精品伊人久久大香线蕉app| 日产久久强奸免费的看| 丰满少妇高潮惨叫久久久| 亚洲午夜精品久久久久久人妖| 久久精品国产亚洲AV忘忧草18| 久久精品国产亚洲av日韩 | 亚洲欧洲久久久精品| www性久久久com| 日韩十八禁一区二区久久| 国产精品久久久久影院嫩草 | 久久久精品波多野结衣| 99久久免费国产精品热| 中文成人无码精品久久久不卡| 久久久久AV综合网成人| 欧美久久天天综合香蕉伊| 久久国产成人精品麻豆| 欧美久久综合性欧美| 日韩欧美亚洲综合久久影院d3| 久久久久国产精品嫩草影院| 久久青青草原亚洲av无码| 性做久久久久久久久老女人| 香蕉久久夜色精品国产小说| 91精品国产综合久久婷婷 | 91精品国产91久久久久久青草 | 国产精品内射久久久久欢欢 | 久久丝袜精品中文字幕| 国产农村妇女毛片精品久久| 成人久久精品一区二区三区| 99久久99这里只有免费费精品| 久久精品免费一区二区| 久久99精品国产麻豆宅宅| 国产成人精品综合久久久久| 色狠狠久久综合网| 久久国产高潮流白浆免费观看| 亚洲精品午夜国产VA久久成人| 久久精品天天中文字幕人妻 | 久久精品草草草|