<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
      厚積薄發
      海納百川,有容乃大
      最近嘗試寫一些基本的C++泛型組件,其實很多都是boost里已經有了,但是還是喜歡自己再寫一下, 原因有三:
      1. boost太龐大,拿來學習不錯,但是一般不會直接在項目中把它import進來。
      2. C++11也挺不錯,但是現在工作還是以VS2008為主,所以這些新特性暫時用不上。
      3. 重復造輪子才能更好的理解輪子背后的原理,以后才能更好的操作輪子。

      看一些庫時發現僅指針一項就有挺多封裝, 思考為什么需要智能指針?
      通過智能指針可以以RAII的方式管理對象, 編寫異常安全的代碼; 原始的指針沒有標明對象所有權的情況, 對象是你單獨擁有的?還是你和別人共享對象, 但是你也參與管理? 還是你只是使用對象,但是沒有所有權? 智能指針很好的解決了這些問題。

      下面是一些常見的智能指針封裝形式:

      std::auto_ptr
      基于所有權的智能指針,每次賦值或是拷貝構造都是所有權的轉移,所以不能放到標準容器中。

      unique_ptr
      同樣是基于所有權的智能指針,不支持賦值或是拷貝構造,但是因為C++11 Move語義和右值引用的支持,可以通過Move的方法放置到容器中。

      proxy_ptr
      僅是原始指針的封裝代理,和普通指針沒有什么區別, 不參與對象生命周期的管理。

      ref_ptr (intrusive_ptr)
      入侵式的引用計數智能指針,對象本身具有引用計數功能, 外部指針通過對象的引用計數管理該對象的生命周期。很多框架和庫都是基于這種方式, 典型COM組件開發中的CComPtr就是這種類型的指針。

      shared_ptr
      非入侵式的引用計數智能指針,對象本身不需要計數功能,外部指針在創建對象時會自己創建計數功能并與對象綁定。這種方式使用起來非常方便,但是如果使用不當也會有很多問題, 具體參見shared_ptr四宗罪

      weak_ptr
      一般配合share_ptr一起使用, 因為weak_ptr本身不參與對象引用計數的管理,但是它能查詢所引用的對象是否還有效, 所以通過weak_ptr可以解決循環引用的問題。

      在寫泛型代碼的過程中,會有對程序失去控制的感覺,比如下面的代碼:
      //C++ 11
      class
       bigclass {};

      void fun(bigclass& b){}

      int main()
      {
         bigclass c;
         std::thread t(&fun, c);
         t.join();

         return 0;
      }
      你知道上面的c對象被拷貝了多少次嗎? 如果改成std::ref(c)后呢?

      我們用C寫代碼時可以明確知道每行代碼最終匯編執行時的情況。
      用經典C++(面向對象)寫代碼時, 如果C++基礎扎實,也可以大概知道背后的匯編代碼, 無非是多些構造,拷貝,賦值,析構,多態等。
      但是用現代C++(面向對象+泛型), 你卻很難知道最終展開后的匯編代碼情況, 因為泛型與對方傳的類型密切相關, 可能你一不小心,對象就被拷貝了N多份,而你還渾然不知。

      越抽象的東西離底層機器就越遙遠, C++隔著復雜的編譯器, Java/C#隔著虛擬機, 腳本語言隔著解釋器, 這就是高級語言的代價。

      看一些開源的東西,越來越覺得博客沒啥好寫了,基礎的東西大家都懂, 高級的東西我也不懂,不知道以前為什么有勇氣寫這么多東西 ^_^
      附上最近模仿的一點東西: MySLib
      posted on 2013-06-20 22:44  Richard Wei  閱讀(878)  評論(0)    收藏  舉報

      主站蜘蛛池模板: 激情动态图亚洲区域激情| 2019久久久高清日本道| gogogo高清在线播放免费| 男女xx00上下抽搐动态图| 国产在线中文字幕精品| 国产美女高潮流白浆视频| yw尤物av无码国产在线观看| 亚洲一区二区精品极品| 国产乱子伦精品免费女| 日本大片在线看黄a∨免费| 资源在线观看视频一区二区| 亚洲精品男男一区二区| 亚洲全网成人资源在线观看| 青草99在线免费观看| 中文字幕无码视频手机免费看| 99欧美日本一区二区留学生| 白嫩少妇激情无码| 午夜成人理论无码电影在线播放 | 亚洲最大av一区二区| 激情国产一区二区三区四区小说| 人妻av无码系列一区二区三区| 国产一区二区三区高清视频| 欧美变态另类zozo| 无码精品人妻一区二区三区湄公河| 欧美 亚洲 另类 丝袜 自拍 动漫 久久久久久久久毛片精品 | 欧美亚洲综合成人A∨在线| 监利县| 精品国产污污免费网站入口| 国产精品中文一区二区| 国产v亚洲v天堂a无码| 成人性无码专区免费视频| 久久夜色精品久久噜噜亚| 少妇又紧又色又爽又刺激视频| 欧洲精品色在线观看| 麻豆精品久久精品色综合| 日韩国产中文字幕精品| 国产精品美女久久久久久麻豆| 无遮挡高潮国产免费观看| 久久人人爽人人爽人人av| 日韩有码av中文字幕| 欧美视频二区欧美影视|