断言式编程Assert

断言式编程Assert
If it can't happen, use assertions to ensure taht it won't!

1. "这决不会发生...", 我们不要这样自我欺骗, 特别是在编码时.
2. 传给断言的条件不应该有副作用.
3. 不要用断言代替真正的错误处理.
4. 如果你需要释放资源, 就让断言失败生成异常, longjump到某个退出点, 或是调用错误处理器.
5. 让断言开着. 即使你确实有性能问题, 也只关闭那些真的有很大影响的断言.
6. "海森堡虫子", 调试改变了被调试系统的行为.  ASSERT(null != iter.nextElement());

下面是一些"不可能的事":
1. 一个月少于28天
2. stat(".",&sb) == -1
3. 在C++里: a=2; b=3;if (a+b!=5) exit(1);
4. 内角和不等于180的三角形
5. 没有60秒的一分钟
6. 在java 中: (a+1)<=a

PS: 刚开始看到, 真的很多都觉得是不可能的~~真当是知识面不够广~
     "这决不会发生...", 我们不要这样自我欺骗, 特别是在编码时. 

Michael.


   

你可能感兴趣的:(断言式编程Assert)