[转载]学习之路三十二:VS调试的简单技巧 – TimYang – 博客园.
这段时间园子里讲了一些关于VS的快捷键以及一些配置技巧,挺好的,大家一起学习,一起进步。
这段时间重点看了一下关于VS调试技巧方面的书,在此记录一下学习的内容吧,主要还是一些比较浅显的知识。
1. 调试窗口
当调试的时候我们需要清晰的看到变量的值,可以使用调试窗口显示变量的值。
快捷键:ctrl + W,1(先同时按ctrl+W,然后在按1)
好处:可以很清晰的把变量的值显示出来,当我们要查看实例里面某一个属性的值就需要这样做了,
你也可以移动鼠标到实例然后点+展开查看,不过那个看的太累。
2. 附加进程
当程序已经发布了,那么本机又有源代码,那么就可以直接附加进程进行Debug调试了。
好处:当程序出现重大崩溃的时候,可以使用附加进程来调试代码,抓住发生错误的时机。
步骤:点击菜单栏Debug,然后选择Attach To Process,如图:
3. 输出窗口
其实如果在不希望通过断点来获取当前变量值的时候,可以通过在输出窗口打印相应的值,可以不通过调试就可以看到值,如下:
4. 断点的魅力
其实关于断点有很多调试技巧,我记得在第一家公司培训的时候,有一个架构师就讲了关于断点方面的知识,当时很惊讶,觉得不可思议。
经过一段时间的了解,把学习心得记下来:
4.1 跟踪点
通过设置跟踪点可以让当前变量的值显示在输出窗口上,而不需要我们调试一个一个的查看,例如:
注意:只有在Debug模式下才有效果。
4.2 条件断点(Condition BreakPoint)
顾名思义就是说这个断点只有满足条件时才能触发,这就是条件断点,如图:
4.3 筛选断点(Filter BreakPoint)
这个断点技巧尤其在多线程的系统中很有帮助,可以帮我查看这个线程什么时候执行此段代码等等。
上面三个使用的比较多,还有几个平常没用到也就没做很深入的了解。
有知道的童鞋可以告诉我,我补上。
5. 调用栈跟踪(Call Stack)
这个技巧可以看到调用方法的层次结构。
这个调试技巧我比较喜欢,因为当一个方法你不知道是被哪个方法调用的话,就可以查看调用栈信息窗口,如下:
6. 线程窗口(Thread)
通过查看线程窗口可以很清楚的看出系统中正在运行的线程。这个对调试死锁问题有一定的帮助。
还可以通过点击线程窗口的向下箭头查看此时此刻线程正在执行哪段代码,如下:
7. 其它
7.1 自动窗口(Autos Window)
可以显示当前变量的值,并且可以编辑当前变量的值,这种调试技巧用的非常多。
7.2 Immediate Window
这个可以直接在窗体内进行编码。
好了,个人能力有限就写这么多了。