1.使用方法
在開發過程中我們可以假設只要程序運行正確,某一條件肯定成立。若不成立,那么我們可以斷言程序肯定出錯。在這種情況下我們可要利用ASSERT來設定斷 言。ASSERT宏的參數是一個邏輯表達式,在程序運行過程中,若該邏輯表達式為真,則不會發生任何動作;若此表達式為假,則系統彈出一個對話框警告你, 并停止程序的執行。同時要求你作出選擇:取消、忽略和重試。若你選擇取消,則系統將停止程序的運行;若你選擇忽略,則系統將忽略該錯誤,并繼續執行程序; 若你選擇重試,則系統將重新計算該表達式,并激活調試器。同TRACE宏一樣,ASSERT宏只對Debug版本的工程產生作用,在Release 版本的工程中,ASSERT宏將被忽略。
下面的示例顯示如何使用ASSERT檢查函數的返回值:
int x = SomeFunc(y);
ASSERT( x >= 0); // 如果x為負,則斷言失敗。
可將斷言用于:
(1)可以使用斷言語句捕捉邏輯錯誤。可以在程序邏輯必須為真的條件上設置斷言。除非發生邏輯錯誤,否則斷言對程序無任何影響。 (2)可以使用斷言語句檢查操作的結果。斷言對于快速直觀地檢查不明顯的操作結果最有價值。
(3)可以使用斷言在代碼中已處理了錯誤的點處測試錯誤類型。
通俗點,意思是預防性的錯誤檢查,在認為不可能的執行到的情況下加一句ASSERT(0),如果運行到此,代碼邏輯或條件就可能有問題。
assert是判定parameter是否為真,為假就報錯。
0為假,所以assert(0)永遠都報錯。
看文倉www.kanwencang.com網友整理上傳,為您提供最全的知識大全,期待您的分享,轉載請注明出處。
歡迎轉載:http://www.kanwencang.com/bangong/20170114/87671.html
文章列表