C++初级之常用的调试技巧
2010-11-02 09:05:18 来源:WEB开发网核心提示:1. 类的构造函数和析构函数很关键,特别是想搞清楚类何时被构造何时被析构时,C++初级之常用的调试技巧,这次在调试单体的时候,能够找出错误得益于构造和析构函数的使用(通过打印输出来判断),眼睛都看花了,这份笔记对我早已没多大价值,另外一点就是:当程序出问题时,最大可能出错的是自己的程序
1. 类的构造函数和析构函数很关键,特别是想搞清楚类何时被构造何时被析构时。这次在调试单体的时候,能够找出错误得益于构造和析构函数的使用(通过打印输出来判断)。另外一点就是:当程序出问题时,最大可能出错的是自己的程序。一般发布的库,bug还是很少的。不过搞清楚库中类的细节还是很重要的。
2. 段错误和指针错误的检查工具:使用gdb 执行程序->在程序出错停止的地方,使用bt(back track),显示函数堆栈的调用关系。一般只需要查找和自己代码相关的调用就可以,根据指示的行,可以很容易的来检查段错误。同时,还可以使用info来显示相应的信息,比如info thread—显示线程的信息,thread +线程号,查看线程的函数堆栈。
3. 多打印关键的输入和输出信息,或是出错和正常信息。
说明:这份笔记是分多次写成的。开始部分是当初学习C++的笔记。06年7月之前,做嵌入式开发的,比如单片机,DSP等,在7月14号最终确定彻底转向计算机方向,并分到一个项目组(学校),做流媒体服务器开发。之前开发汇编用得多,C懂点,C++根本不懂。开始的第一天拿到上千行的C++代码,彻底晕了,根本看不懂。于是接下来3天,看了<C++ 编程>这本书,并写下了最初的这份笔记。后面的2周内,写出了3000多行的C++项目代码,虽然有bug,但这份经历对我影响很大。那些天每天工作都在12小时以上,眼睛都看花了。这份笔记对我早已没多大价值,但这份经历却让我印象深刻。希望这些笔记对初学者能有所帮助!
更多精彩
赞助商链接