SDL 错误处理和断言的使用(Assertions)
2015-07-22 20:24
351 查看
SDL_ASSERT_LEVEL影响到不同的断言是否起作用。
SDL_ASSERT_LEVEL可以被定义为下列的值
可以使用的断言
下面有些例子
SDL_ASSERT_LEVEL可以被定义为下列的值
SDL_ASSERT_LEVEL | 描述 | 函数 | 函数状态 |
---|---|---|---|
0 | 关闭全部断言 | SDL_assert SDL_assert_release SDL_assert_paranoid | disabled disabled disabled |
1 | 为了正式版本(默认) | SDL_assert SDL_assert_release SDL_assert_paranoid | disabled enabled disabled |
2 | 调试版本 | SDL_assert SDL_assert_release SDL_assert_paranoid | enabled enabled disabled |
3 | 打开全部检查 | SDL_assert SDL_assert_release SDL_assert_paranoid | enabled enabled enabled |
void SDL_assert(condition); void SDL_assert_paranoid(condition); void SDL_assert_release(condition);
SDL错误处理
使用下面三个函数int SDL_SetError(const char* fmt, ...); const char* SDL_GetError(void); void SDL_ClearError(void);
下面有些例子
if (SDL_Init(SDL_INIT_EVERYTHING) < 0) { // Unrecoverable error, exit here. printf("SDL_Init failed: %s\n", SDL_GetError()); }
int errorCode = 0; ... errorCode = -37; ... if (errorCode < 0) SDL_SetError("Something unexpected happened: Error Code %d", errorCode);
相关文章推荐
- Assert(断言实现机制深入剖析)
- Java陷阱之assert关键字详解
- python中assert用法实例分析
- TDD实现健壮的四则运算
- MFC控件 void DrawItem(LPDRAWITEMSTRUCT) { ASSERT(FALSE); }
- java中什么时候用assert
- SDL使用触屏模拟鼠标点击事件
- SDL显示bmp,SDL播放yuv420P
- 在Code::Blocks中配置SDL2项目
- Android拷贝压缩文件到程序目录
- SDL一些库的安装
- Gradle Android插件 官方文档 (5)
- 要死的ASSERT(AfxGetThread() == NULL)问题--解决
- linux环境下SDL安装全过程及常见问题剖析
- 第二课:SDL Window的创建与显示
- 第三课:SDL2上绘制BMP图片
- 第四课:多个Texture的绘制
- 第五课:SDL绘制非BMP图片
- 第六课:对RenderClear的不同部分的显示
- 第七课:TTF字体的绘制