本篇包括tip311-tip320
http://www.watch-life.net/visual-studio/visual-studio-2008-tip-day-31.html

#311、按Shift+F11跳出函数

原文链接:You can press Shift+F11 to step out of a function

操作步骤:
在调试状态,断点停留在一个函数的内部

可以按Shift+F11从函数的任何位置跳出函数。

评论:用Shift+F11跳出函数让我们直之关注需要了解的函数部分,对于不想知道的部分直接跳出。

http://www.watch-life.net/visual-studio/visual-studio-2008-tip-day-31.html

#312、在调试器里没有‘继续’命令

原文链接:There’s no command for Continuing the debugger

操作步骤:
注意启动图标的提示的变化,在"调试.启动"命令是是“启动调试”

继续调试时,是提示“继续”

我们也许会想:当然应该有和两个快捷键相对应的命令。那么“继续”的命令是什么呢?你会发现原来没有“调试.继续”这个命令,而只有“调试.启动”命令。在调试模式下提示只是被改名了(并没产生新的命令)。

评论:这些细节对于很少用命令的程序员也许很难发现,对作者这样的测试人员却不能放过。

#313、不使用断点来中断调试

原文链接:You can break the debugger without using Breakpoints

操作步骤:
如果你使用时VB,可以在中断执行的代码处添加“stop”关键字,这个stop语句相当于添加一个断点。有时候,输入一个“stop”比记住单击F9 或去拿鼠标更快。

如果你使用的c#,可以在你的代码里使用“Debugger.Break()”来中断调试,只有你使用System.Diagnostics名称空间才是这样。

评论:这种加中断的方法,你估计用的不多吧。

#314、创建对象ID跟踪你的对象

原文链接:How to create an Object ID to keep track of your objects

操作步骤:
(调试状态)在你打开对象的实例的数据提示时候,在右键菜单里你会发现“创建对象ID

如果你单击“创建对象ID”,你会发现{1#}被增加在(对象的)值的内容里面。

你也可以在自动和监视窗口发现它

如果你要再次看见这个变量,你可以在监视窗口应用对象的ID,如下图所示

你可以删除对象ID,在右键菜单,或者监视(局部或自动)窗口。

评论:从Visual Studio 2005开始,引入了"Object Identity While Debugging"的概念,也就是说,系统给在调试阶段的每个对象,都可以赋予一个别名,在调试时,直接引用该别名就可以了。假设在调试的时候,需要跟踪比如dataset或者hashtable等对象,这些对象中包含了很多其他的子对象,如果想对这些数量众多的子对象进行跟踪的话,将十分麻烦。在Visual Studio 2005中,可以使用object identity(对象标识)的方法去标记每一个对象

#315、如何用找回源码对话框代替“没有可用的源码”消息

原文链接:How to get the Find Source dialog back instead of the "There is no source code available" message

操作步骤:
有时候,你正在调试的时候,vs不知道源码的位置在哪,vs会给你一个确认框,要求你指定源码的位置。

如果你小心点击了“取消”按钮,会提示你“在当前位置没有可用的源码”

这时候,如果你停止,再试一次,你会发现查找代码位置的对话框不再出现了。vs会直接提示你“没有可用的源代码”,即使你想再次告诉vs源码的位置,也没办法了。

解决办法如下:
右键点击“解决方案”+“通用属性”+“调试源码文件”,有个“不查找这些源文件”的文本框

删除文件所对应的行后,就可以在调试中再次出现查找源码的对话框。

评论:这么细微的功能你没注意吧。

#316、自动窗口和局部窗口的差异

原文链接:What's the difference between the Autos window and the Locals window

操作步骤:
自动窗口:显示当前声明和上一声明。
局部窗口:显示范围内所有声明。自动窗口是局部窗口的子集。
例如,如下代码段,不做任何事,只产生未使用变量的警告。

在自动窗口,你可以看见上一个声明和当前声明被运算。

在局部窗口,你会看见所有的声明,包括参数

评论:如果你关注更多的声明运算建议你用局部窗口,如果你只关注当前声明的话最好用自动窗口。

#317、在控制台程序中用Ctrl+F5让控制台停留在打开的状态

原文链接:If you do a Ctrl+F5 on a console application, the console stays open

操作步骤:
在控制台程序中,启动调试,如果没有“stop/Debugger.Break()”或某种Console.Read()方法,控制台就会瞬间出现然后消失。

如果你按Ctrl+F5启动程序而不调试,在底部就会出现“按任意键继续”的消息。

评论:作者对此颇有疑问,不太理解为什么在调试状态控制台会一闪而过,而看不到任何调试信息。这个问题确实让人有些费解。

#318、在监视窗口增加$exception变量来捕获异常

原文链接:You can add $exception to the Watch window to see the caught exception

操作步骤:
如果你想迅速知道异常是否被捕捉,而不必再try catch 中找出异常的变量名,你可以在监视窗口输入:$exception

评论:这个方法非常不错,在try catch里看是否捕捉了异常,速度很快。

#319、使用文本可视化工具

原文链接:How to use the Text Visualizer

操作步骤:
例如你有一些很长的字符串,也许是sql链接字符串或者只是一些表格数据,如果你需要查看真个字符串。
当然你可以把这些字符串复制到记事本去查看内容,不过,在vs里也可以实现这个功能。
打开字符串数据提示,单击下拉箭头

你会发现可视化的工具供选择

因为是字符串,所以选择“文本可视化工具”。注意这个对话框可以调整大小,也可以从里面复制和粘贴。

评论:文本可视化工具是我用的最多的可视化工具了,看比较成的sql语句非常方便。

#320、文本可视化工具支持文字换行

原文链接: The Text Visualizer supports word wrap

操作步骤:
在可视化文本工具底部有个选择切换"换行"的选项,给你一种记事本的体验。

如果不选择该项,文字就会超出对话框的范围。

评论:如果不换行,看起来就太痛苦了。

更多有关Visual Studio 2008 每日提示文章见:Visual Studio 2008 每日提示系列索引

更多文章见:守望轩[http://www.watch-life.net/]

Visual Studio 2008 每日提示(三十一)相关推荐

  1. Visual Studio 2008 每日提示(三十二)

    本篇包括tip321-tip330 http://www.watch-life.net/visual-studio/visual-studio-2008-tip-day-32.html #321.使用 ...

  2. Visual Studio 2008 每日提示(一)

    Visual Studio 2008 每日提示(tip of day )是2007年7月Sara Ford在她的博客里推出了VS 2008每日提示系列,里面收集了许多使用VS 2008技巧和诀窍,截至 ...

  3. Visual Studio 2008 每日提示(十)

    本篇包括tip91-tip100 http://www.watch-life.net/visual-studio/visual-studio-2008-tip-day-10.html #91.查找组合 ...

  4. Visual Studio 2008 每日提示(十四)

    本篇包括tip131-tip140 http://www.watch-life.net/visual-studio/visual-studio-2008-tip-day-14.html #131.你为 ...

  5. Visual Studio 2008 每日提示(二十三)

    本篇包括tip221-tip230 http://www.watch-life.net/visual-studio/visual-studio-2008-tip-day-23.html #221.在对 ...

  6. Visual Studio 2008 每日提示(八)

    #071.给所有快速查询的结果标记上书签 原文链接:Did you know... You can bookmark all of your Quick Find results 操作步骤: 在&qu ...

  7. Visual Studio 2008 每日提示(六)

    #051.循环使用剪贴薄里粘贴的不同内容 原文地址:http://blogs.msdn.com/saraford/archive/2007/10/01/did-you-know-how-to-cycl ...

  8. Visual Studio 2008 每日提示(四)

    本篇包括tip31-tip30 http://www.watch-life.net/visual-studio/visual-studio-2008-tip-day-4.html #031. 把编辑器 ...

  9. windows 7安装icloud或visual studio 2008失败提示无法打开键,请验证您对该键拥有足够的访问权限,或者与您的技术支持人员联系

    错误描述: windows 7系统下,安装icloud或visual studio 2008不成功,提示无法打开键UNKNOWN\Components\DF85......,请验证您对该键拥有足够的访 ...

最新文章

  1. 避免神经网络过拟合的5种技术(附链接) | CSDN博文精选
  2. java 自动装箱自动拆箱_自动装箱和自动拆箱
  3. 未来已来 -只是尚未流行
  4. VTK修炼之道37:图像平滑_高斯滤波器
  5. .net bootstrap 下拉树状选择框_Bootstrap搭建图书管理系统
  6. Leet Code OJ 101. Symmetric Tree [Difficulty: Easy]
  7. ubuntu16.04下面git与github对应起来
  8. CentOS工作内容(二)关闭SELinux
  9. 中单引号怎么打出来_怎么做打出来的豆浆会更好?
  10. windows下编译64位程序时没有没_WIN32定义
  11. 面试|2021 菜鸟金三银四铜五 Android 被锤历程出炉...
  12. Aster及其它遥感数据下载地址
  13. DM8与Oracle关于模式、用户等概念的分析
  14. 写书用什么软件好_微信加人软件什么样的引流效果好
  15. 大数据是什么?初学者怎样理解大数据技术
  16. 需求分析和常见的需求问题解决
  17. 数据库 schema含义
  18. 音视频之模拟今日头条列表视频
  19. 一文了解新型AMM方案Caspian,解决L2导致的流动性碎片化问题
  20. ubuntu20.04 使用 rplidar A2过程记录

热门文章

  1. 项目开发时前端及数据库遇到的问题
  2. 新手小白零基础搭建个人博客(二)Hexo搭建
  3. 华北理工大学815c语言程序设计,2017年华北理工大学信息工程学院815C程序设计考研冲刺密押题...
  4. 数据结构火车订票系统C语言课程设计,求助一个数据结构C语言课程设计源代码订票系统^:^!...
  5. 代码谱写传奇,深度揭秘中国开发者现状!
  6. 【深度学习】Transformer 向轻量型迈进!微软与中科院提出两路并行的 Mobile-Former...
  7. 【深度学习】每个数据科学家都必须了解的 6 种神经网络类型
  8. 【深度学习】编写同时在PyTorch和Tensorflow上工作的代码
  9. 【Python基础】Python3十大经典错误及解决办法
  10. 【算法漫画】什么是红黑树?