1.两个版本:在程序的编写过程当中,编译其既要维护程序的交付版本,又要维护程序的调试版本,调试版本,利用它提供的测试部分在增长程序功能时自动地查错。在程序编完以后,编译其交付版本,封装以后交给经销商,针对这个问题能够利用断言进行补救。
2
.
assert
是个只有定义了DEBUG 才起做用的宏,若是其参数的计算结果为假,就停止调
用程序的执行
3.
是个只有定义了DEBUG 才起做用的宏,若是其参数的计算结果为假,就停止调
用程序的执行。
4.
要使用断言对函数参数进行确认
5.
“无定义”意味着“要避开”
6.
要从程序中删去无定义的特性
或者在程序中使用断言来检查出无定义特性的非法使用
7.
不要浪费别人的时间─── 详细说明不清楚的断言:
8.断言
不是用来检查错误的,
第一个断言的用法是正确的,由于它被用来检查在该程序正常工做时毫不应该发生的非
法状况。第二个断言的用法至关不一样,它所测试的是错误状况,是在其最终产品中确定会出
现而且必须对其进行处理的错误状况。
9.消除所作的隐式假定,或者利用断言检查其正确性
10.利用断言来检查不可能发生的状况
11.在进行防错性程序设计时,不要隐瞒错误
12.要利用不一样的算法对程序的结果进行确认
13.不要等待错误发生,要使用初始检查程序
14.
在项目的整个生存期中,程序中都应该保留断言。在程序的交付以前不要把它们删去。在从此打算为程序增长新功能时,这些断言仍然有用。
1
5.
测试不该包含应保留在函数非调试版本中代码。