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

O(1) 的小樂

Job Hunting

公告

記錄我的生活和工作。。。
<2010年9月>
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

統計

  • 隨筆 - 182
  • 文章 - 1
  • 評論 - 41
  • 引用 - 0

留言簿(10)

隨筆分類(70)

隨筆檔案(182)

文章檔案(1)

如影隨形

搜索

  •  

最新隨筆

最新評論

閱讀排行榜

評論排行榜

assert斷言

      ssert是只有定義了DEBUG才起作用的宏,如果其參數的計算結果為假,就中止調用程序的執行。

    assert餅不是一個倉促拼湊起來的宏,為了不在程序的release和debug版本之間引起重要的差別,需要對其進行仔細的定義。宏assert不應該弄亂內存,不應該對未初始化的數據進行初始化,即它不應該產生其他副作用。正因為要求程序的debug版本和release版本行為完全相同,所以才不把assert作為函數,而把它做成宏。如果把assert做成函數的話,其調用就會引起不期望的內存或代碼的兌換。要記住,使用assert的程序員是把它看成一個在任意系統狀態下都可以安全使用的無害檢測手段。

   在同錯誤進行斗爭時,每一點幫助都會有助于錯誤的發現。我們為什么要那些自己從來都用不著的靈活性呢?

#include <crtdefs.h>

#undef  assert

#ifdef  NDEBUG

#define assert(_Expression)     ((void)0)

#else

#ifdef  __cplusplus
extern "C" {
#endif

_CRTIMP void __cdecl _wassert(_In_z_ const wchar_t * _Message, _In_z_ const wchar_t *_File, _In_ unsigned _Line);

#ifdef  __cplusplus
}
#endif

#define assert(_Expression) (void)( (!!(_Expression)) || (_wassert(_CRT_WIDE(#_Expression), _CRT_WIDE(__FILE__), __LINE__), 0) )

#endif  /* NDEBUG */

以上為我的VS2008里面assert.h

  當assert失敗時,他就會使用預處理程序根據宏_FILE_  _LINE_所提供的文件名和行號調用_wassert   _wassert在標準錯誤輸出設備stderr上打印一條錯誤信息,然后中止:

   void _wassert(char * strFile , unsigned uLine)

{

    fflush(stdout);

    fprintf(stderr,”\nAssertion failed : %s,line %u\n”,srFile, uLIne);

   fflush(stderr);

   abort();

}

   在執行abort之前,需要調用fflush將所有的緩沖輸出寫到標準輸出設備stdout上。同樣,如果stdout 和stderr 都將指向同一設備,fflush stdout仍然要放在fflush stderr之前,以確保只有在所有的輸出都送到了stdout之后,fprintf才顯示相應的錯誤信息。

   不管斷言宏最終是用什么樣子方法定義的,都要使用它來對傳遞給相應函數的參數進行確認。如果在函數的每個調用點都對其進行參數進行檢查,錯誤很快就會被發現。斷言宏最好作用是使用戶在錯誤發生時,就可以自動地把他們檢查出來。

 

 

此外關于斷言,也有兩篇不錯的文章

http://blog.csdn.net/donghai51arm/archive/2009/11/28/4897004.aspx

http://dev.firnow.com/course/3_program/c++/cppsl/200861/118777.html

posted on 2010-09-02 21:18 Sosi 閱讀(837) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   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>
            久久久久久精| 国产日韩精品一区二区浪潮av| 国产精品久久久一本精品| 亚洲黄色毛片| 另类av导航| 久久激情视频| 国产区精品视频| 亚洲视频一区| 亚洲免费高清视频| 欧美成人高清视频| 亚洲大胆女人| 欧美高清在线视频| 欧美福利一区二区三区| 亚洲国产精品va在线观看黑人 | 亚洲欧美精品一区| 欧美高清在线精品一区| 日韩一级免费观看| 亚洲乱码国产乱码精品精| 免费欧美日韩| 一区二区三区四区蜜桃| 99视频精品免费观看| 亚洲福利视频二区| 欧美国产日韩一区二区三区| 午夜久久美女| 久久字幕精品一区| 午夜精品成人在线| 麻豆成人综合网| 欧美亚洲一区二区在线观看| 免费在线亚洲欧美| 久久国产精品久久久久久电车| 欧美成人一品| 久久久久久久综合| 欧美亚洲第一页| 欧美激情网友自拍| 国内精品视频在线播放| 一区二区三区国产| 亚洲日产国产精品| 久久精品盗摄| 欧美一区二区三区视频在线| 欧美区在线观看| 免费观看日韩| 国产在线精品二区| 午夜精彩视频在线观看不卡 | 欧美日韩国产首页在线观看| 久久久久久一区二区三区| 欧美日韩一本到| 欧美激情乱人伦| 极品少妇一区二区三区| 亚洲欧美综合| 欧美一区国产二区| 国产精品成av人在线视午夜片 | 亚洲在线成人| 欧美人体xx| 91久久在线| 亚洲日本欧美在线| 欧美成人精品在线观看| 老司机精品导航| 在线观看不卡av| 久久久久久久综合日本| 久久久成人网| 狠狠色综合网| 久久久精品久久久久| 久久亚洲春色中文字幕久久久| 国产人成一区二区三区影院| 亚洲欧美一区二区三区极速播放| 亚洲一区二区三区在线看| 欧美色图五月天| 亚洲视频免费观看| 午夜精品99久久免费| 国产精品天天看| 亚洲免费影视| 久久精品五月| 伊人婷婷欧美激情| 美腿丝袜亚洲色图| 亚洲国产专区| 亚洲一本视频| 国产日韩亚洲欧美综合| 久久国产视频网| 美国十次了思思久久精品导航| 国产视频一区在线观看| 久久久综合网| 亚洲日本电影在线| 亚洲欧美激情视频在线观看一区二区三区| 国产精品高潮粉嫩av| 久久av一区二区三区漫画| 欧美成人三级在线| 亚洲午夜视频在线| 国产一区久久| 欧美精品电影在线| 亚洲欧美日本精品| 欧美激情精品久久久久| 亚洲一区不卡| 精品动漫3d一区二区三区免费版 | 国产精品二区三区四区| 欧美一区二区啪啪| 亚洲激情电影在线| 性亚洲最疯狂xxxx高清| 在线观看日韩av电影| 欧美少妇一区| 久久久久久噜噜噜久久久精品| 欧美激情一区二区三区蜜桃视频 | 亚洲欧美一区二区原创| 麻豆精品传媒视频| 亚洲一区亚洲| 91久久久在线| 国产欧美韩日| 欧美欧美午夜aⅴ在线观看| 亚洲欧美日韩中文播放| 亚洲人成亚洲人成在线观看图片| 亚洲欧美日韩在线观看a三区| 在线观看91精品国产入口| 欧美视频成人| 免费观看在线综合色| 午夜激情亚洲| 宅男66日本亚洲欧美视频| 欧美v亚洲v综合ⅴ国产v| 亚洲一区在线观看免费观看电影高清| 精久久久久久| 国产日韩av高清| 欧美日韩一区二区三区在线观看免| 久久久91精品国产一区二区三区 | 亚洲性夜色噜噜噜7777| 欧美高清在线| 久久中文字幕导航| 欧美主播一区二区三区美女 久久精品人| 亚洲欧洲在线视频| 亚洲成人原创| 好男人免费精品视频| 国产精品亚洲一区| 国产精品成人免费| 国产精品成人免费视频| 欧美日韩大片| 欧美精品免费在线观看| 欧美成人免费va影院高清| 久久久久久久综合狠狠综合| 性做久久久久久| 欧美一区二区日韩| 先锋影音网一区二区| 亚洲欧美制服另类日韩| 午夜精品网站| 欧美一级一区| 久久www成人_看片免费不卡| 性欧美1819性猛交| 欧美在线视频一区| 久久久久久电影| 久久午夜羞羞影院免费观看| 久久噜噜噜精品国产亚洲综合| 久久九九精品| 另类成人小视频在线| 欧美成人激情视频| 欧美日本不卡| 国产精品成人一区二区网站软件 | 午夜精品福利在线| 亚洲欧美一级二级三级| 欧美一级久久久久久久大片| 久久精品国产成人| 蜜乳av另类精品一区二区| 欧美1区2区3区| 亚洲精品日产精品乱码不卡| 日韩天天综合| 欧美一区二区高清在线观看| 久久九九99| 欧美精品一级| 国产精品伊人日日| 在线观看欧美亚洲| 一区二区三区精品视频| 欧美一区二区三区久久精品| 乱人伦精品视频在线观看| 91久久午夜| 亚洲欧美精品suv| 久久综合伊人77777蜜臀| 欧美日韩国产大片| 国产一区二区精品久久| 亚洲精品在线三区| 久久国产免费| 亚洲激情视频| 羞羞答答国产精品www一本| 欧美黄色精品| 国产一区二区精品| 亚洲麻豆av| 久久午夜影视| 亚洲天堂免费观看| 免播放器亚洲| 国产深夜精品福利| 一区二区av在线| 美女精品视频一区| 亚洲综合国产| 欧美久久99| 亚洲国产欧洲综合997久久| 午夜精品一区二区三区在线播放 | 久久综合久久久久88| 亚洲区一区二区三区| 久久精品官网| 国产精品综合色区在线观看| 亚洲精品综合| 欧美.www| 久久成人18免费观看| 国产精品白丝jk黑袜喷水| 亚洲欧洲日韩女同| 久色婷婷小香蕉久久|