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

隨筆-90  評(píng)論-947  文章-0  trackbacks-0

ScopeGuard 只是幫我們調(diào)用一個(gè)函數(shù)而已,至于這個(gè)函數(shù)是否有異常出來,它不該悄悄地把它吞了,而應(yīng)該還我們本來面目,不知道是不是?可是為什么幾乎所有介紹 ScopeGuard 的文章都說這 try … catch … 用得好呢?

posted on 2011-03-23 09:39 溪流 閱讀(2553) 評(píng)論(6)  編輯 收藏 引用 所屬分類: C++

評(píng)論:
# re: 覺得 Loki::ScopeGuard 似乎不該在它自己里面 try … catch … 2011-03-23 10:16 | expter
如果關(guān)注函數(shù)本身代碼有異常,
就需要try..catch來處理了,異常發(fā)生時(shí)堆棧會(huì)unwind,而且代碼看起太丑陋,就封裝下咯。
Loki::ScopeGuard 輕量的RAII ,對(duì)資源管理與異常安全提供比較好,可以只關(guān)注于異常部分。  回復(fù)  更多評(píng)論
  
# re: 覺得 Loki::ScopeGuard 似乎不該在它自己里面 try … catch … 2011-03-23 10:34 | airtrack
Loki::ScopeGuard實(shí)際上是一個(gè)通用的RAII,它是通過在ScopeGuardImplBase的所有派生類的析構(gòu)函數(shù)里面SafeExecute(*this)來做到RAII,而在SafeExecute做資源釋放操作是通過調(diào)用派生類的fun_,如果不try...catch,那么fun_執(zhí)行如果發(fā)生異常的話,那異常就逃離了析構(gòu)函數(shù)。在C++中析構(gòu)函數(shù)是不應(yīng)該有異常產(chǎn)生的,詳見《Effective C++》。  回復(fù)  更多評(píng)論
  
# re: 覺得 Loki::ScopeGuard 似乎不該在它自己里面 try … catch … 2011-03-25 11:09 | 無民事
朋友你的QQ多少?可以交流下嗎?  回復(fù)  更多評(píng)論
  
# re: 覺得 Loki::ScopeGuard 似乎不該在它自己里面 try … catch … 2011-03-26 07:26 | OwnWaterloo
rollback函數(shù)本身就不應(yīng)該拋出異常。
異常安全的代碼依賴一些無拋出的代碼來執(zhí)行commit或者rollback。

所以:
1. 本來面目是還不了的
rollback動(dòng)作就應(yīng)該無拋出的執(zhí)行, 無論它本身是一個(gè)無拋出的函數(shù), 還是被scopeguard的析構(gòu)所吞掉。

2. scopeguard是否應(yīng)該插手
我也認(rèn)為它多管閑事了。
無拋出是rollback函數(shù)自身的責(zé)任。
沒有無拋出保證就不能稱為一個(gè)rollback。
應(yīng)該努力將其寫為rollback, 然后scopeguard僅僅考慮注冊(cè)而已。
對(duì)實(shí)在沒有時(shí)間與精力寫為無拋出的rollback, 可自行吞掉:
rollback_nothrow(...) { rollback(...) }
makeguard(rollback_nothrow, ...)

3. loki
loki應(yīng)該算是一個(gè)實(shí)驗(yàn)/教學(xué)性質(zhì)的庫吧?
所以盡可能的多傳授一些C++的知識(shí), 比如"析構(gòu)絕對(duì)不能拋出異常"。
而沒太注重"該保證是誰的責(zé)任"。
所以就選擇一個(gè)簡(jiǎn)單且效率稍微有點(diǎn)低的方案了。  回復(fù)  更多評(píng)論
  
# re: 覺得 Loki::ScopeGuard 似乎不該在它自己里面 try … catch … 2011-03-28 14:49 | 溪流
@OwnWaterloo
你也認(rèn)為它多管閑事了?!好~哈哈!  回復(fù)  更多評(píng)論
  
# re: 覺得 Loki::ScopeGuard 似乎不該在它自己里面 try … catch … 2011-03-28 18:45 | OwnWaterloo
@溪流
恩, 我還覺得 loki.scopeguard應(yīng)該區(qū)分為
1. rollback 注冊(cè)的動(dòng)作可取消 —— loki.scopeguard實(shí)際實(shí)現(xiàn)
2. on_exit 注冊(cè)的動(dòng)作一定執(zhí)行 —— 其實(shí)這個(gè)用得不少

將 loki.scopeguard 用于 on_exit 的情況很浪費(fèi)啊……
需要開辟局部變量, 需要 if 測(cè)試, 而且這個(gè)測(cè)試代碼是在每一個(gè)退出點(diǎn)產(chǎn)生的……
這些開銷根本不需要的。

loki應(yīng)該是為了簡(jiǎn)單吧, 一頂倆……  回復(fù)  更多評(píng)論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            性做久久久久久久久| 红桃视频欧美| 欧美电影资源| 国产日韩欧美在线播放| 亚洲人线精品午夜| 影音先锋中文字幕一区| 香蕉久久夜色精品| 亚洲欧美国产精品va在线观看| 欧美~级网站不卡| 久久综合狠狠| 黑人操亚洲美女惩罚| 亚洲欧美一区在线| 亚洲综合精品一区二区| 欧美日韩精品免费观看视一区二区| 美女任你摸久久| 国外成人在线视频网站| 午夜精品亚洲一区二区三区嫩草| 亚洲综合大片69999| 欧美日韩亚洲精品内裤| 亚洲国产婷婷综合在线精品| 亚洲国产另类精品专区| 另类国产ts人妖高潮视频| 鲁大师影院一区二区三区| 国产拍揄自揄精品视频麻豆| 亚洲欧美一区二区三区极速播放| 亚洲一区二区三区精品在线观看| 欧美日韩国产首页在线观看| 日韩手机在线导航| 亚洲午夜久久久久久久久电影院 | 久久综合九色综合久99| 久久视频国产精品免费视频在线| 国产日韩精品入口| 午夜精品久久久久久久99热浪潮| 欧美在线视频网站| 国产视频一区三区| 久久精品人人做人人爽电影蜜月| 久久综合中文| 91久久在线| 欧美老女人xx| 亚洲一区二区三区视频播放| 久久精品人人做人人综合| 国模 一区 二区 三区| 久久久一区二区| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲精品久久7777| 欧美日韩理论| 欧美一区二区三区免费看| 久久久伊人欧美| 亚洲精品在线观看免费| 国产精品www色诱视频| 亚洲欧美色婷婷| 女人天堂亚洲aⅴ在线观看| 亚洲乱码国产乱码精品精98午夜| 欧美日韩在线电影| 久久国产精品久久久| 亚洲国产成人精品女人久久久 | 理论片一区二区在线| 精品51国产黑色丝袜高跟鞋| 欧美xx69| 午夜在线不卡| 亚洲激情二区| 欧美中在线观看| 亚洲精品男同| 国产亚洲精品久久久| 欧美刺激性大交免费视频| 亚洲视频精选| 欧美夫妇交换俱乐部在线观看| 亚洲影院在线观看| 红杏aⅴ成人免费视频| 欧美日韩一区二区精品| 久久精品国产精品亚洲精品| 日韩视频在线永久播放| 蜜臀久久久99精品久久久久久| 久久香蕉国产线看观看网| 国自产拍偷拍福利精品免费一| 免费毛片一区二区三区久久久| 夜夜躁日日躁狠狠久久88av| 男人的天堂亚洲| 欧美一区二区三区喷汁尤物| 亚洲精品久久久久久久久久久久 | 亚洲国产激情| 欧美在线|欧美| 宅男噜噜噜66一区二区66| 永久免费毛片在线播放不卡| 国产精品高潮呻吟久久av黑人| 麻豆91精品| 欧美有码视频| 亚洲一区一卡| 亚洲神马久久| 亚洲美女网站| 亚洲三级影片| 亚洲国产精品激情在线观看| 久久午夜视频| 久久久久久久久岛国免费| 午夜久久久久久| 亚洲淫性视频| 日韩一本二本av| 亚洲每日在线| 亚洲免费观看视频| 亚洲精品国产日韩| 亚洲黄色一区二区三区| 在线欧美影院| 在线欧美小视频| 亚洲国产精品成人精品| 在线精品国精品国产尤物884a| 国产日韩欧美在线播放不卡| 国产精自产拍久久久久久| 国产精品日本精品| 国产精品久久久99| 国产精品嫩草影院一区二区| 国产精品日韩一区二区三区| 国产精品久久波多野结衣| 国产精品高潮呻吟久久| 国产精品视频yy9099| 国产精品亚洲欧美| 国产一区二区三区四区五区美女 | 曰韩精品一区二区| 一区二区三区亚洲| 亚洲国产91色在线| 99视频国产精品免费观看| 一道本一区二区| 亚洲女ⅴideoshd黑人| 午夜伦理片一区| 久久久噜噜噜| 亚洲第一网站免费视频| 亚洲精品欧美日韩专区| 中文在线不卡| 欧美一级电影久久| 久久这里只有精品视频首页| 欧美成人午夜激情| 欧美私人网站| 国产一区二区三区四区三区四| 黄色成人片子| 99视频热这里只有精品免费| 午夜国产精品影院在线观看| 久久久久久久久久久久久9999| 久久综合久色欧美综合狠狠| 亚洲高清在线视频| 亚洲午夜久久久| 久久久久www| 欧美日韩在线看| 国产一本一道久久香蕉| 亚洲精品在线视频| 香蕉成人伊视频在线观看| 裸体女人亚洲精品一区| 亚洲日本黄色| 久久国产视频网站| 欧美日韩国语| 国产自产v一区二区三区c| 亚洲精品久久久久久下一站| 欧美亚洲视频一区二区| 欧美mv日韩mv亚洲| 亚洲视频大全| 欧美国产综合视频| 国产午夜亚洲精品羞羞网站| 日韩小视频在线观看专区| 欧美专区中文字幕| 亚洲精选视频免费看| 久久国产日韩| 欧美午夜激情视频| 91久久精品美女高潮| 欧美一区二区视频网站| 亚洲国产福利在线| 欧美有码在线视频| 国产精品hd| 日韩视频专区| 欧美福利视频在线| 欧美专区在线观看| 国产精品黄页免费高清在线观看| 亚洲国产精品一区二区久| 久久国产精品久久精品国产| 亚洲免费黄色| 欧美激情在线有限公司| 在线播放不卡| 久久青草久久| 午夜精品在线观看| 国产精品久久九九| 一区二区三区国产| 亚洲精美视频| 欧美成人69av| 亚洲国产精品尤物yw在线观看| 久久久久久九九九九| 亚洲欧美伊人| 国产欧美精品日韩区二区麻豆天美| 亚洲深夜av| 日韩一本二本av| 欧美日韩免费观看一区二区三区 | 亚洲精品一区中文| 麻豆国产精品一区二区三区| 欧美在线免费视屏| 国产一区二区三区黄视频| 午夜一级久久| 午夜精品久久久久久久久久久久久 | 亚洲免费观看| 欧美日韩1区2区| 制服丝袜亚洲播放| 一区二区三区成人| 欧美亚洲第一页| 欧美一级午夜免费电影| 亚洲欧美日韩在线不卡|