Assert宏简单的说明

来源:互联网 发布:域名状态出现呢 编辑:程序博客网 时间:2024/06/06 09:04

最近在看一本书《游戏编程精粹》,里面讲述了很多C++种Assert宏的用法,我觉得很有用,所以拿出来和大家分享一下~!

首先,什么是Assert?

以下是书中原话:每个程序员都应该虔诚地使用assert宏。Assert是一个简单的,无需额外代价的、针对你的假设进行双重检验的工具、它时时刻刻都在保护着你。

通过给assert宏一个条件进行计算,你就断言这个条件应该为真。如果条件为假,assert将弹出一个对话框告诉你发生了什么问题。

         我在这儿单独解释一下,assert只在Debug模式下面有效,而在Relese模式下面是不会执行的。所以Assert是一个非常有效的调试工具。

 可以做一个小实验,下面一段代码在VS2010的Debug模式下面会蹦出对话框,而在Release模式下面则没有其他反应。

#include <assert.h>int _tmain(int argc, _TCHAR* argv[]){int *p=NULL;assert(p!=NULL);return 0;}

因此,我们用好了assert,对调试代码是非常有帮助的,下面我们就仔细谈谈如何最大限度的利用assert!

如果您觉得有帮助,请留下宝贵的意见和建议,谢谢~!

0 0
原创粉丝点击