概念断言
assert
C 标准库中提供的一种调试期断言机制,通过 <cassert> 头文件定义,当表达式为假时终止程序,常与 NDEBUG 宏绑定在发布构建中被移除
时间轴 (近 90 天)
10月16日
当定义了 NDEBUG 时(通常在 Release 构建中),assert 宏会被展开为空操作。
待验证50%
10月15日
NDEBUG 宏被定义时,标准头文件 <cassert> 会把 assert(expr) 展开为空语句,从而让断言在编译期被彻底移除。
待验证50%
C 标准库中提供的一种调试期断言机制,通过 <cassert> 头文件定义,当表达式为假时终止程序,常与 NDEBUG 宏绑定在发布构建中被移除
当定义了 NDEBUG 时(通常在 Release 构建中),assert 宏会被展开为空操作。
NDEBUG 宏被定义时,标准头文件 <cassert> 会把 assert(expr) 展开为空语句,从而让断言在编译期被彻底移除。