• <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  評(píng)論-40  文章-117  trackbacks-0



             

            何時(shí)需要使用斷言

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


            什么地方不要使用斷言

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


             

            ASSERT()是干什么用的

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

            posted on 2008-04-28 11:32 李陽(yáng) 閱讀(1350) 評(píng)論(0)  編輯 收藏 引用 所屬分類: C++
            国产A级毛片久久久精品毛片| 国产午夜免费高清久久影院| 久久综合给合综合久久| 亚洲国产成人精品女人久久久| 久久精品成人| 色综合久久无码中文字幕| 国产视频久久| 国产三级久久久精品麻豆三级| 99久久99久久精品国产| 国产精品久久婷婷六月丁香| 国产精品久久久久天天影视| 精品久久久久成人码免费动漫| 国产一区二区精品久久| 四虎国产精品成人免费久久| 国内精品久久久久久野外| 色婷婷综合久久久中文字幕| 狠狠久久综合| 99久久精品费精品国产一区二区 | 久久777国产线看观看精品| 久久久久国产日韩精品网站| 99久久久国产精品免费无卡顿| 99久久综合国产精品免费| 久久精品亚洲精品国产欧美| 国产免费久久精品99久久| 国产麻豆精品久久一二三| 亚洲狠狠婷婷综合久久蜜芽| 国产精品美女久久福利网站| 性高朝久久久久久久久久| 精品久久久久久无码中文字幕 | 久久人人爽人人爽人人AV东京热| 亚洲精品无码专区久久同性男| 久久精品国产影库免费看| 国产精品久久久久久福利漫画| 久久婷婷五月综合色高清| 久久久久亚洲AV无码专区体验| 久久婷婷五月综合成人D啪| 免费精品久久天干天干| 久久婷婷五月综合国产尤物app| 国产A级毛片久久久精品毛片| 一本久久a久久精品亚洲| 久久久久99精品成人片直播|