C语言中的一些winapi函数!
2015-10-23 10:22
337 查看
这篇文章,我将从最基本的开始谈起。但希望可以涉及更广的层面,而不仅仅是为你的程序除错(debug)。你将会看到,我认为除错(debugging)这个字的全部意义,并不只是通过ide的内建机制来运行的。我希望在这篇小小的文章结束时,几乎每个读者都可以学到至少是一件新东西,并把它藏到你的兵器库中。记住,你程序中的错误(bug)越少,你的最终用户对你的程序的感觉就越好;你对错误(bug)的处理越好,用户们发现错误(bug)时就越乐于告诉你以便你改正错误。好了,现在系好安全带,戴上护目镜,让我们开始一段疯狂的路程!
书写干净的代码
首先而且也许是最重要的一点是书写干净、可读的代码是极其重要的。能够在写完一段代码后回顾一下并给它加上注释来说明这段代码用来做什么和为什么这么做,将会省去你以后跟踪代码的无数个痛苦的小时。也许你会多花一点时间来书写,但当你花过n小时来跟踪那些难以捉摸的bug时,你就会同意多花点时间来让程序代码可读是多么值得了。(你本可以很容易完成除错的)。如果没有这么做过,我建议你停下来,读读另一篇scott的精彩文章-代码的风格(大家需要的话,将会尽快翻译)。
使用异常及异常处理能力
现在进入下一步,这仍然是基于代码的步骤。(除了在极少数的情况下,你不能老是使用系统内建的除错器,所以知道其他可以找出这些麻烦的虫子的办法总是个好主意)。本步骤完全是关于如何做到,更重要的是处理好在你的窗体出现异常时系统扔给你的(产生的)错误。在c++标准得到认可前黑暗的旧日子里,应用程序通常会通过返回值来发出错误信号(这种方法在ole和一些winapi函数中仍在使用)。很显然,你可以很轻易的忽略这些(事实上也是经常的,我的意思是你经常检查一个winapi函数的返回值吗?)。
所以他们决定….,okay,我们需要一个新的机制,一个你不能忽略的。但你可以处理,定制(自定义 customize)。异常就此出现了。想要一个特殊的错误类型标志?容易的很,定义一个新的异常类型(不过是一个类,没别的),抛出来(产生这个异常)。完了。
相关文章推荐
- C语言的指针学习指导
- C++调用Python环境
- C语言字符检测函数
- sqlite3把字段为int32(用c++的time(nullptr)获取的)的秒数显示为年月日时分秒
- C代码中如何调用C++ C++中如何调用C
- C++和C的语法区别_输入输出
- 转 Visual C++ 将整合Clang
- C++ 11 强制类型转换 北京大学程序实习公开课
- C++ STL中常见的typename关键字的作用
- 最长递增子串(LIS)算法_严格单调递增_单调递增_连续_不连续
- 第6周项目5 后缀表达式
- c++ 11 异常处理 北京大学C++程序设计实习公开课
- 【第7周 项目4 - 队列数组】
- C++的引用
- 【第7周 项目3 - 负数把正数赶出队列】
- 高精度除法与求余C++版和java版
- 1021. 个位数统计 (15)
- 第6周项目4 数制转换
- Leetcode Rotate Image
- 【C/C++学院】0819-/类的成员函数与const-mutable /构造与析构/拷贝构造deletedefault以及深浅拷贝/静态成员函数成员变量类在内存的存储默认参数/友元类以及友元函数