断言在程序开发中的运用

来源:互联网 发布:安邦 华视网络 编辑:程序博客网 时间:2024/05/29 23:48

    完整工程代码放在我的github上:https://github.com/yjwwyygy/CrossPlatformLibrary

    在程序开发中,经常会对一些错误进行处理,尤其是系统调用的返回值,一些致命或不应该出现的错误,如申请内存失败及其它系统错误,我们的程序应该做十分完备的处理,以达到程序的健壮性。

    断言在C/C++开发中是一个有用的利器,运用的好,可以大大的节省修复BUG的时间,C++中有更好的解决方案--异常,但它有一定的复杂性,本着简单的事情简单做的原则,我使用断言来处理。

    系统提供的断言错误信息太少,而且在其些编译器优化的情况下会被去掉,这里我自己定义一些断言处理,提供更详细的信息,主要处理以下错误:

    (1)普通断言。用于一般的逻辑处理。

    (2)errno样式的断言。一些系统调用出错返回-1,错误代码设置在全局变量errno中。

    (3)POSIX样式的断言。POSIX标准的系统调用,出错时返回非0错误码。

    (4)其它。如内存分配失败等。

整理好的代码如下:



0 0
原创粉丝点击