assert
是C++中的一個(gè)宏,用于在程序運(yùn)行時(shí)檢查某個(gè)條件是否為真。如果條件為假,程序會(huì)終止執(zhí)行,并顯示一條錯(cuò)誤消息。assert
通常用于調(diào)試階段,幫助程序員發(fā)現(xiàn)潛在的問(wèn)題。在發(fā)布程序時(shí),可以通過(guò)定義宏NDEBUG
來(lái)禁用assert
功能。
使用assert
的基本語(yǔ)法如下:
#include <cassert>
int main() {
int x = 5;
int y = 0;
// 使用assert檢查條件是否為真
assert(y != 0 && "Division by zero!");
int z = x / y; // 這里將不會(huì)被執(zhí)行,因?yàn)閥為0
return 0;
}
在這個(gè)例子中,assert
檢查y
是否不等于0。如果y
為0,程序?qū)⒔K止執(zhí)行,并顯示錯(cuò)誤消息"Division by zero!"。