断言名 设定条件 Release Debug 是否有报告 影响因素
assert 默认 不执行 执行 有 NDEBUG/_DEBUG的定义
ASSERT 默认 不执行 执行 有
VERIFY 默认 执行 执行 Release环境下无,
Debug环境下有
总结:
assert : 与NDEBUG/_DEBUG的定义有关, NDEBUG宏存在时不起作用。
ASSERT: 在Debug环境下起作用,并且报告, Release环境下不起作用。
VERIFY: 在Debug和Release下都起作用,不同地方是,在Debug环境下,有报告,Release下无报告。