青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

最近嘗試寫一些基本的C++泛型組件,其實很多都是boost里已經(jīng)有了,但是還是喜歡自己再寫一下, 原因有三:
1. boost太龐大,拿來學(xué)習(xí)不錯,但是一般不會直接在項目中把它import進來。
2. C++11也挺不錯,但是現(xiàn)在工作還是以VS2008為主,所以這些新特性暫時用不上。
3. 重復(fù)造輪子才能更好的理解輪子背后的原理,以后才能更好的操作輪子。

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

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

std::auto_ptr
基于所有權(quán)的智能指針,每次賦值或是拷貝構(gòu)造都是所有權(quán)的轉(zhuǎn)移,所以不能放到標(biāo)準(zhǔn)容器中。

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

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

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

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

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

在寫泛型代碼的過程中,會有對程序失去控制的感覺,比如下面的代碼:
//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寫代碼時可以明確知道每行代碼最終匯編執(zhí)行時的情況。
用經(jīng)典C++(面向?qū)ο?寫代碼時, 如果C++基礎(chǔ)扎實,也可以大概知道背后的匯編代碼, 無非是多些構(gòu)造,拷貝,賦值,析構(gòu),多態(tài)等。
但是用現(xiàn)代C++(面向?qū)ο?泛型), 你卻很難知道最終展開后的匯編代碼情況, 因為泛型與對方傳的類型密切相關(guān), 可能你一不小心,對象就被拷貝了N多份,而你還渾然不知。

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

看一些開源的東西,越來越覺得博客沒啥好寫了,基礎(chǔ)的東西大家都懂, 高級的東西我也不懂,不知道以前為什么有勇氣寫這么多東西 ^_^
附上最近模仿的一點東西: MySLib
posted on 2013-06-20 22:38 Richard Wei 閱讀(3349) 評論(3)  編輯 收藏 引用 所屬分類: STL&GP

FeedBack:
# re: 智能指針與庫
2013-06-22 22:12 | cao
看一些開源的東西,越來越覺得博客沒啥好寫了,基礎(chǔ)的東西大家都懂, 高級的東西我也不懂,不知道以前為什么有勇氣寫這么多東西 ^_^

就是學(xué)生課堂作業(yè)和專家著書的區(qū)別
博主要進入著書立說的的階段了  回復(fù)  更多評論
  
# re: 智能指針與庫
2013-06-23 20:18 | Richard Wei
@cao
慚愧,不敢誤人子弟。  回復(fù)  更多評論
  
# re: 智能指針與庫
2013-06-25 16:56 | tb
需要學(xué)習(xí)的東西太多了  回復(fù)  更多評論
  

只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲欧美日韩直播| 欧美高清在线视频| 好吊色欧美一区二区三区视频| 欧美午夜一区| 国产精品私房写真福利视频| 国产精品久久看| 国产日韩欧美夫妻视频在线观看| 国产精品久久久一区二区三区| 欧美私人啪啪vps| 国产精品一区免费观看| 黑人巨大精品欧美黑白配亚洲| 在线日本高清免费不卡| 亚洲欧洲视频| 羞羞视频在线观看欧美| 久久精品一区二区国产| 欧美大秀在线观看| 亚洲国产一二三| 在线视频欧美一区| 久久成人18免费观看| 欧美国产乱视频| 国产日韩欧美二区| 亚洲国产精品毛片| 欧美一进一出视频| 亚洲国产精品久久人人爱蜜臀| 亚洲视屏在线播放| 久久久免费精品| 国产精品看片你懂得| 亚洲精品在线三区| 久久一区二区三区国产精品 | 国产欧美一区二区色老头| 国内成+人亚洲| 一本色道88久久加勒比精品| 葵司免费一区二区三区四区五区| 激情综合网激情| 亚洲欧美日韩成人| 亚洲国产欧美不卡在线观看| 欧美在线日韩精品| 国产精品一区二区男女羞羞无遮挡| 最新国产成人av网站网址麻豆| 久久福利精品| 亚洲午夜久久久久久久久电影院 | 久久国产综合精品| 日韩视频一区二区在线观看 | 午夜精品成人在线视频| 欧美高清在线观看| 亚洲大片在线观看| 久久久免费精品| 午夜精品久久久久久久久久久久久| 欧美日韩成人综合天天影院| 一区在线影院| 久久久五月婷婷| 午夜精品区一区二区三| 国产精品一区二区三区免费观看| 一区二区三区.www| 亚洲精品一区中文| 欧美日韩你懂的| 亚洲日本无吗高清不卡| 亚洲国产成人精品女人久久久 | 久久成人精品视频| 亚洲欧美日韩一区二区在线| 国产精品日韩久久久| 亚洲欧美一区二区精品久久久| 亚洲精品综合久久中文字幕| 欧美成人日本| 9色国产精品| 一区二区三区国产在线| 欧美日韩三级| 亚洲线精品一区二区三区八戒| 亚洲另类在线视频| 国产精品ⅴa在线观看h| 亚洲女同在线| 欧美一区二区三区成人| 韩国成人福利片在线播放| 久久精品视频一| 久久激情网站| 亚洲国产天堂久久综合| 亚洲国产精品尤物yw在线观看| 欧美极品在线播放| 亚洲综合日韩在线| 久久er99精品| 亚洲黄色小视频| 亚洲精品视频在线观看网站| 亚洲天堂av在线免费观看| 欧美偷拍一区二区| 久久精品国产91精品亚洲| 久久综合一区二区三区| 日韩一级黄色大片| 中文国产亚洲喷潮| 精品成人在线观看| 亚洲三级免费| 国产精品视频999| 另类专区欧美制服同性| 欧美伦理一区二区| 欧美在线观看视频| 欧美精品亚洲精品| 欧美伊人久久久久久午夜久久久久 | 久久综合久色欧美综合狠狠| 99国产精品99久久久久久粉嫩| 亚洲午夜激情在线| 在线视频成人| 一本一本大道香蕉久在线精品| 国产日韩欧美亚洲一区| 欧美成人黑人xx视频免费观看 | 亚洲电影第三页| 在线中文字幕日韩| 在线欧美福利| 亚洲一区精彩视频| 亚洲精品国产精品国自产在线| 亚洲欧美日韩精品久久久久| 亚洲激情啪啪| 久久激情视频| 亚洲综合导航| 欧美精品免费在线| 欧美成人国产一区二区| 国产精品久久国产三级国电话系列| 免费中文日韩| 极品尤物一区二区三区| 亚洲欧美另类久久久精品2019| 一区二区三区欧美亚洲| 开心色5月久久精品| 久久九九免费视频| 国产精品素人视频| 亚洲裸体俱乐部裸体舞表演av| 亚洲国产精品va在线看黑人动漫| 香蕉久久夜色精品| 亚洲女ⅴideoshd黑人| 欧美日韩黄视频| 亚洲高清视频的网址| 在线观看国产日韩| 久久国产精品第一页| 亚洲欧美精品在线观看| 欧美日韩国产精品 | 亚洲高清激情| 亚洲第一福利视频| 免费成人激情视频| 亚洲第一视频| 亚洲国产精品va| 欧美r片在线| 亚洲大胆在线| 亚洲激情欧美激情| 免费精品视频| 亚洲国产日韩欧美综合久久| 曰韩精品一区二区| 久久久亚洲国产美女国产盗摄| 精品成人在线观看| 久久综合久久美利坚合众国| 亚洲精品欧美精品| 久久综合影音| 欧美福利电影网| 亚洲黄色小视频| 欧美精品一区二区高清在线观看| 国产精品视屏| 久久大综合网| 欧美国产精品日韩| 亚洲精品国精品久久99热一| 欧美精品电影| 在线视频中文亚洲| 久久久精品性| 日韩视频一区二区三区在线播放免费观看 | 国产日本欧美一区二区三区| 亚洲欧美偷拍卡通变态| 久久青草福利网站| 亚洲肉体裸体xxxx137| 欧美日韩亚洲一区三区| 午夜精品免费视频| 欧美黄色免费网站| 亚洲综合国产| 激情丁香综合| 欧美日韩mp4| 久久激情五月婷婷| 亚洲美女诱惑| 久久久欧美一区二区| 99精品久久久| 国产一区二区剧情av在线| 久久久精品一品道一区| 99精品福利视频| 久久在线免费观看| 这里是久久伊人| 国产一区二区日韩| 欧美看片网站| 亚洲欧美一区二区激情| 欧美福利一区二区三区| 亚洲综合欧美日韩| 亚洲国产婷婷香蕉久久久久久99 | 国内精品嫩模av私拍在线观看| 欧美国产激情| 久久人人97超碰精品888| 一区二区日韩精品| 欧美一区2区视频在线观看 | 国产综合精品一区| 欧美日韩在线不卡| 久久一区二区三区国产精品 | 亚洲欧洲在线一区| 久久影视精品| 久久精品国产欧美亚洲人人爽| 亚洲国内高清视频| 国产一区日韩二区欧美三区| 欧美日韩一区二区欧美激情| 开心色5月久久精品| 欧美一区久久|