您的位置: 旅游網 > 影視 >> 演員

    有沒有指定位置刪除物業

    發布時間:2021-10-26 07:15:26

    沒有,不過如果你需要的話,可以自己寫一個。

    看看這個指定位置創建(placement new),它將對象放進了一系列Arena中;

    class Arena {

    public:

    void* allocate(size_t);

    void deallocate(void*);

    // ...

    };

    void* operator new(size_t sz, Arena a)

    {

    return locate(sz);

    }

    Arena a1(some arguments);

    Arena a2(some arguments);

    這樣實現了之后,我們就可以這么寫:

    X* p1 = new(a1) X;

    Y* p2 = new(a1) Y;

    Z* p3 = new(a2) Z;

    // ...

    但是,以后怎樣正確地銷毀這些對象呢?沒有對應于這種“placement new”的內建的“placement delete”,原因是,沒有一種通用的方法可以保證它被正確地使用。在C++的類型系統中,沒有什么東西可以讓我們確認,p1一定指向一個由Arena類型的a1分派的對象。p1可能指向任何東西分派的任何一塊地方。

    然而,有時候程序員是知道的,所以這是一種方法:

    templateclass T void destroy(T* p, Arena a)

    {

    if (p) {

    p-~T(); // explicit destructor call

    allocate(p);

    }

    }

    現在我們可以這么寫:

    destroy(p1,a1);

    destroy(p2,a2);

    destroy(p3,a3);

    是十分重要的自然法則。(來自百度百科馬太效應詞條) 如果Arena維護了它保存著的對象的線索,你甚至可以自己寫一個析構函數,以避免它發生錯誤。

    這也是可能的:定義一對相互匹配的操作符new()和delete(),以維護《C++程序設計語言》15.6中的類繼承體系。參見《C++語言的設計和演變》10.4和《C++程序設計語言》19.4.5。查看本文來源

    西寧哪家婦科醫院好
    孩子吃飯沒胃口怎么辦
    南京包皮過長治療費用多少錢
    猜你會喜歡的
    猜你會喜歡的
    主站蜘蛛池模板: 国产一区二区三区美女| 国色天香精品一卡2卡3卡| 亚洲国产成人久久综合一区77| 精品真实国产乱文在线| 国产欧美日韩亚洲| a级国产乱理伦片| 日日碰狠狠添天天爽不卡| 亚洲午夜无码久久| 男女乱婬真视频| 国产三级av在线播放| 青青草原在线视频| 大香伊蕉国产av| 中文国产成人精品少久久| 最近中文字幕完整在线电影| 亚洲精品午夜国产va久久成人| 美国一级毛片在线观看| 国产女主播喷水视频在线观看| 7777奇米四色| 好吊妞视频这里有精品| 久久久久久夜精品精品免费啦| 欧美xxxx做受欧美精品| 亚洲精品自产拍在线观看| 经典国产一级毛片| 国产免费人成在线视频| 青青操国产在线| 国语free性xxxxxhd| а√天堂中文最新版地址| 无码中文字幕av免费放| 久久精品日韩Av无码| 欧美成人中文字幕dvd| 亚洲黄色片一级| 美女范冰冰hdxxxx| 国产免费一区二区三区在线观看 | 最新国产精品精品视频| 亚洲网址在线观看| 精品伊人久久久香线蕉| 国产一级毛片大陆| 香蕉国产人午夜视频在线| 国产激情视频一区二区三区| 337p色噜噜| 国自产拍亚洲免费视频|