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

            focus on linux, c/c++, lua

            用一段共享內存來實現共享指針

            看了vczh的共享指針的實現,我大概理解為 用一段共享內存來實現一切。這一段共享內存包含的內容包括:
            1,真正的數據
            2,4個字節的引用計數
            任何指向這段共享內存的指針都有權利修改這段內存的內容,比如
            1,當有新指針指向這塊內存的時候,如拷貝構造函數,或是被右值賦值的函數operator =,新的對象都應該去把
            共享內存中引用計數加1。注意這里右值被拷貝過來的時候,this是能操作這塊共享內存的,所以計數的加減都
            很容易操作的。
            2,在當前的指針逃脫這塊共享內存的時候,要把這里的引用計數減1,當減到0的時候,釋放所有的內存。所以operator=
            應該是先減去現在的引用計數,再增加新的引用計數
            大概的結構如下:
            class share_ptr
            {
                T* pSharedData;
                int* pSharedCnt;
            };

            vczh的文章在這里http://m.shnenglu.com/vczh/archive/2010/06/24/118635.html

            posted on 2010-06-25 15:35 zuhd 閱讀(1610) 評論(0)  編輯 收藏 引用 所屬分類: c/c++

            国产激情久久久久影院老熟女| 久久亚洲AV无码精品色午夜麻豆| 激情五月综合综合久久69| 欧美一级久久久久久久大片| 久久www免费人成看片| 久久播电影网| 久久久久久国产精品免费无码| 久久精品?ⅴ无码中文字幕| 狼狼综合久久久久综合网| 久久亚洲AV成人无码电影| 久久SE精品一区二区| 久久综合亚洲欧美成人| 久久人人妻人人爽人人爽| 亚洲中文精品久久久久久不卡| 亚洲国产精品一区二区三区久久| 久久久精品人妻无码专区不卡| 国产精品美女久久久久AV福利| 99久久精品国产麻豆| 久久精品免费观看| 国产精品99久久99久久久| 久久影院综合精品| 精品伊人久久久| 2020国产成人久久精品| 亚洲国产高清精品线久久| 狠狠精品久久久无码中文字幕| 色欲综合久久躁天天躁| 99精品久久久久中文字幕| 久久亚洲精品无码VA大香大香| 欧美熟妇另类久久久久久不卡 | 国产亚洲欧美成人久久片| 国产成人精品白浆久久69| 久久91精品综合国产首页| 一级做a爰片久久毛片毛片| .精品久久久麻豆国产精品| 久久精品国产一区二区三区日韩| 亚洲国产成人久久笫一页| 久久精品中文字幕一区| 久久精品国产亚洲av水果派| 伊人久久成人成综合网222| 亚洲欧美精品伊人久久| 久久国产精品国语对白|