撸代码

断言assert的用法总结

2019-11-29 02:39:53 作者:码工0组

assert()表达的意思就是,程序在假设条件下,能够正常良好的运作,其实就相当于一个 if 语句。其作用是如果它的条件返回错误,则终止程序执行。使用 assert 的缺点是,频繁的调用会极大的影响程序的性能,增加额外的开销。

assert只有在 Debug 版本中才有效,如果编译为 Release版本则被忽略。

单元测试必须使用断言。

用法总结与注意事项:

1、在函数开始处检验传入参数的合法性。

2、每个assert只检验一个条件,因为同时检验多个条件时,如果断言失败,无法直观的判断是哪个条件失败。

3、assert和后面的语句应空一行,以形成逻辑和视觉上的一致感。

4、使用断言捕捉不应该发生的非法情况。

5、在编写函数时,要进行反复的考查,一旦确定了的假定,就要使用断言对假定进行检查。

6、当进行防错性编程时,如果"不可能发生"的事情的确发生了,则要使用断言进行报警。

1-191130024101E4.png