断言在程序开发中的运用
来源:互联网 发布:安邦 华视网络 编辑:程序博客网 时间: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
- 断言在程序开发中的运用
- VC/MFC程序开发中的断言
- VC/MFC程序开发中的断言
- c语言在程序中的运用
- CURL库在程序中的运用浅析
- java继承在程序中的运用
- 分享一个简单的资源管理器程序,主要是演示下LINQ在C#开发中的运用
- 属性类在开发中的灵活运用
- 4.工厂模式在开发中的运用
- Case 在做留言本程序中的运用...
- 【Chrome】RSA算法在扩展程序中的运用
- CURL库在C++程序中的运用浅析
- “假死战术”在程序中的实际运用及效果
- “假死战术”在程序中的实际运用及效果
- CURL库在C++程序中的运用浅析
- java集合框架中方法在程序中的运用
- CURL库在C++程序中的运用浅析
- CURL库在C++程序中的运用浅析
- 制作触摸屏网页程序1
- cocos2d-x VS2012 UTF8码导致的错误的解决办法
- 使用Volley框架,不走onResponse和onError方法
- 编写一个智能指针类
- oracle rac12c 安装数据库 check maximum locked memory setting on the system
- 断言在程序开发中的运用
- drawable转bitmap
- 菜鸟也玩虚拟机:VMWare虚拟机的安装设置、硬盘分区及系统安装方法
- C++计算输入数据对应二进制中1的个数。
- 玩转EasyUI之ValidateBox
- Storyboard 全解析 (二)
- 基数排序/计数排序
- ulua源码分析
- 高特权级代码段转向低特权级代码段(利用 ret(retf) 指令实现 jmp from ring0 to ring3)