最近两天经常看到断言这个概念,因此考虑记录一下:
ANSI c断言:
void assert(_expression)
C语言标准中支持,在包含<assert.h>或<cassert>头文件之前定义NDEBUG宏,可禁用assert函数的断言判断。原因在头文件中有代码段:
#ifdef NDEBUG
#define assert(_Expression) ((void)0)
多用assert,对初学者来说有好处。
检查函数输入,输出,对象当前状态,逻辑变量是否合理,以及类的不变量。