探索C++语言种种简洁灵活特性说明

sulinux 2010-01-11

据了解发现C++语言确实是个简洁灵活的特性,打错了一个字符,或者忘了打字符就有很大的可能造成巨大的损失的,这样就要编程人员和一些技术人员有一颗很踏实而仔细的心,我相信会一定会成功的。

比如程序员经常将等于逻辑判断符==误敲成赋值运算符=,对于我来说就不太可能程序运行出错后才发现,因为我的习惯是,对于逻辑判断,将常量置于==的左边,如果我误输入了=,那么编译的时候编译器就会报错。

Visual C++调试技术
检查代码直到头晕眼花也没有发现错误,一运行程序就死机,只好祭出最后的法宝:调试器。Visual C++调试器可以称得上Windows平台下最好的C/C++调试器了,而且Visual C++调试器还可以调试用其他语言如Delphi、Java编写的程序,可谓功能强大。

尽管Visual C++调试器具有如此大的威力,它也只能帮助你发现一些隐藏的逻辑错误,对于程序设计和结构的缺陷无能为力。程序员最常用到的Visual C++调试技术有设置断点、跟踪调用堆栈和反汇编调试,其他编译器功能均为调试中的辅助工具,因为反汇编调试需要程序员具备汇编语言知识和语言底层结构,这里不再介绍。

调试C++语言的先决条件
专业调试者有一个共同的特点,即他们同时也是优秀的开发者。显然,如果你不是一个优秀的开发者,那么你也不可能成为调试专家,反之亦然。以下是要成为一名高水平的,至少是合格的调试者或者开发者所需要精通的领域。

1. 了解项目:对项目的了解是防范用户界面、逻辑及性能方面的错误的第一要素。了解各种功能如何在各种源文件里实现,以及在哪儿实现,你就能够缩小查找范围,很快找出问题所在。

2. 掌握语言:掌握项目所使用的语言,调试者(开发者)既要知道如何使用这些语言进行编程,还要知道这些C++语言在后台作些什么。

3. 掌握技术:要解决棘手的问题,第一个重要步骤就是抓住所用技术的要领,这并不意味着你必须对所用技术的一切细节都一清二楚,而是说你应该对所使用的技术有一个大概的了解,而且更重要的是,当需要更详细的信息时,你应该确切的知道在哪儿查找。

4. 操作系统和CPU:任何项目都实际运行在特定的操作系统和特定的CPU,对操作系统了解越多,对查找错误帮助越大;从理论上来说,掌握汇编语言,你就可以调试解决任何bug。

无论从事什么工作,只要是经常从事技术工作的人,都必须不断地学习以跟上技术的发展,更不用说想干得更好或是想走在技术发展的前沿。经常阅读优秀的技术书籍和杂志,多动手编写一些实用程序,阅读其他优秀开发者的代码,作一些反汇编工作,都会有效帮助你提高开发和调试水平(尤其当你将这四者有机结合起来)。

调试过程
确定一个适用于解决所有错误的调试过程有一定的难度,但John Robbins提出的调试过程应该说是最实用的:
1. 复制错误
2. 描述错误
3. 始终假定错误是自己的问题
4. 分解并解决错误
5. 进行有创见的思考
6. 使用调试辅助工具
7. 开始调试工作
8. 校验错误已被更正
9. 学习和交流

相关推荐