• <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>
            隨筆-4  評論-40  文章-117  trackbacks-0



             

            何時需要使用斷言

            1.可以在預(yù)計正常情況下程序不會到達的地方放置斷言:ASSERT( FALSE );
            2.斷言可以用于檢查傳遞給私有方法的參數(shù)。(對于公有方法,因為是提供給外部的接口,所以必須在方法中有相應(yīng)的參數(shù)檢驗才能保證代碼的健壯性)
            3.使用斷言測試方法執(zhí)行的前置條件和后置條件
            4.使用斷言檢查類的不變狀態(tài),確保任何情況下,某個變量的狀態(tài)必須滿足。(如age屬性應(yīng)大于0小于某個合適值)


            什么地方不要使用斷言

            斷言語句不是永遠會執(zhí)行,可以屏蔽也可以啟用
            因此:
            1.不要使用斷言作為公共方法的參數(shù)檢查,公共方法的參數(shù)永遠都要執(zhí)行
            2.斷言語句不可以有任何邊界效應(yīng),不要使用斷言語句去修改變量和改變方法的返回值


             

            ASSERT()是干什么用的

              ASSERT()是一個調(diào)試程序時經(jīng)常使用的宏,在程序運行時它計算括號內(nèi)的表達式,如果表達式為FALSE (0), 程序?qū)蟾驽e誤,并終止執(zhí)行。如果表達式不為0,則繼續(xù)執(zhí)行后面的語句。這個宏通常原來判斷程序中是否出現(xiàn)了明顯非法的數(shù)據(jù),如果出現(xiàn)了終止程序以免導(dǎo)致嚴(yán)重后果,同時也便于查找錯誤。例如,變量n在程序中不應(yīng)該為0,如果為0可能導(dǎo)致錯誤,你可以這樣寫程序:
                ......
                ASSERT( n != 0);
                k = 10/ n;
                ......
                ASSERT只有在Debug版本中才有效,如果編譯為Release版本則被忽略。
                assert()的功能類似,它是ANSI C標(biāo)準(zhǔn)中規(guī)定的函數(shù),它與ASSERT的一個重要區(qū)別是可以用在Release版本中。

            posted on 2008-04-28 11:32 李陽 閱讀(1336) 評論(0)  編輯 收藏 引用 所屬分類: C++
            国产福利电影一区二区三区,免费久久久久久久精 | 久久精品18| 久久精品国产99久久久香蕉| 午夜精品久久影院蜜桃| 伊人久久亚洲综合影院| AV无码久久久久不卡网站下载| 青青青青久久精品国产 | 66精品综合久久久久久久| 久久国产福利免费| 99久久国产综合精品女同图片| 久久99国产精品久久99果冻传媒| 久久99精品久久久久久不卡| 亚洲精品乱码久久久久久蜜桃不卡 | 99久久香蕉国产线看观香| 91精品国产乱码久久久久久| 亚洲精品综合久久| 久久久久中文字幕| 精品熟女少妇a∨免费久久| 亚洲国产精品一区二区三区久久| 人人狠狠综合久久88成人| 久久亚洲中文字幕精品一区| 久久精品无码一区二区三区| 久久无码AV一区二区三区| 精品久久久久久99人妻| 久久精品国产亚洲77777| 久久免费视频1| 亚洲精品97久久中文字幕无码| 91精品国产91久久久久久| 精品国产一区二区三区久久久狼 | 午夜精品久久影院蜜桃| 激情综合色综合久久综合| 久久精品嫩草影院| 久久国产乱子精品免费女| 成人久久久观看免费毛片| 久久精品人人做人人爽电影蜜月| 久久中文字幕人妻丝袜| 思思久久精品在热线热| 97精品国产97久久久久久免费| 久久久久久伊人高潮影院| AV无码久久久久不卡蜜桃| 日本强好片久久久久久AAA|