当前位置: 首页 > news >正文

学校校园网网站建设预算江苏质监站网站做资料

学校校园网网站建设预算,江苏质监站网站做资料,张家口建设厅官方网站,中国 网站服务器 租金Visual Studio的调试技巧 【原文地址】 Debugging Tips with Visual Studio 2010 【原文发表日期】 2010/8/19 10:48 AM 这是我写的关于VS2010和.Net4发布的博客系列的第26篇。 今天的博文包含了一些有用的能用于VS的调试技巧。 我的朋友 Scott Cate#xff08;他写了很多很… Visual Studio的调试技巧 【原文地址】 Debugging Tips with Visual Studio 2010 【原文发表日期】 2010/8/19 10:48 AM   这是我写的关于VS2010和.Net4发布的博客系列的第26篇。 今天的博文包含了一些有用的能用于VS的调试技巧。 我的朋友 Scott Cate他写了很多很好的关于VS使用技巧和窍门的 博客最近向我强调了这些很好的技巧大部分使用VS的开发人员好像不知道这些技巧即使他们大部分都在产品开发组呆过一阵子。 如果你还没有使用过这些技巧希望这篇博文能帮你发现它们。 它们学起来很容易能帮你节省很多时间。 运行到光标Ctrl F10 我经常看见人们是这样来调试应用程序的 他们在应用程序需要调试的代码前设置一个断点然后反复的敲F10/F11来逐步通过代码直到到达他们真正想要研究的确切位置。有些时候他们需要仔细观察所跨过的每行代码这样使用F10/F11 就很合理。 但是更普遍的是他们只想快点进入他们真正关心的那行代码——这是使用F10/F11 就不是最好的选择了。 相反 你可能想利用调试器支持的特性“运行到光标”。 只需简单地把你的光标放在代码中你想程序运行到的那一行然后同时敲CtrlF10。这样程序就会运行到光标所在的那一行 然后执行中止由调试器控制——这样就节约了你反复敲击F10/F11到达那里的时间。即使你想运行到的那行代码不在当前调试的方法或类里而是在一个独立的方法或类里这也同样奏效。 条件断点 我们经常在可用性学习中见到另一个普遍的技巧开发人员设置断点运行程序试着输入一些数据当到达一个断点时手工检查某种条件是不是成立如果成立才决定进一步研究。 如果条件不符合他们想要的 按F5继续执行程序尝试另外一些输入再手工重复同样的过程。 VS的条件断点功能提供了一个更加容易的方法来处理以上情况。 条件断点允许你只在某种明确指定的条件成立时才中止执行由调试器控制。这帮你免于手动检查/恢复你的程序 使得整个调试过程免去许多手工活也不那么冗长乏味。 设置一个条件断点 设置一个条件断点十分简单在代码里按F9为某一行设置一个断点 然后右击断点——编辑器左边的红色圆圈在右键菜单中选择“条件…” 将弹出以下对话框 允许你指明某种条件只有当这种条件成立时断点才能达到。 例如我们可以通过写下面的表达式来指明只有当paginatedDinners列表元素的个数小于10时才中止程序由调试器控制。 现在 当我重新运行程序来研究一下 调试器只在这个查找返回值小于10时才中止程序执行。 如果返回值不小于10 将不会触发断点。 命中次数功能 有时你只想在条件第N次成立时中止执行。例如仅当第5次出现查找返回值小于10时才中止执行。你这样启用这个功能右击断点 选择“命中次数…”菜单命令。 将弹出以下对话框 允许你指明程序中断的条件条件被第N次满足时或者条件被满足的次数是N的倍数时或者条件被满足的次数大于等于N次时。 机器/线程/进程筛选器 你可以右击断点选择“筛选器…”菜单命令 来指明断点只在某台特定的机器或某个特定的进程或线程中才能被触发。 跟踪点——当击中断点时自定义行为 很多人不知道的一个调试功能是使用 跟踪点。 跟踪点是一个断点 当它被击中时某种自定义的宏会被触发执行。当你想研究你的应用程序而又不想中止执行程序时 这个功能特别有用。 我将用一个简单的控制台程序来演示如何使用跟踪点。 下面是 斐波那契数列的递归实现 在上面的应用程序中针对特定的输入我们使用Console.WriteLine()来输出最后的斐波那契数列。假如我们想在调试过程中研究斐波那契的递归过程——而不停止调试的执行 跟踪点能帮我们很轻松地做到这一点。 设置跟踪点 你可以这样启用跟踪点按F9在代码上设置一个断点 右击断点在右键菜单中选择“命中条件…”菜单命令 将弹出以下对话框——允许你指定当断点触发时进行何种操作 如上所示我们指定每次当断点的条件成立时打印跟踪信息。注意我们指定了想要输出的局部变量“X” 的值作为输出信息的一部分。 局部变量能通过{变量名}的语法被引用。 也有内嵌的命令像$CALLER$CALLSTACK $FUNCTION等等可以用来输出跟踪信息中常见的值。 上面对话框的底部 我们也选中了“继续执行”单选框——表示我们不希望调试器暂停程序。 相反程序会继续执行——只是我们自定义的跟踪信息会在每次断点条件满足时输出就这点不同。 现在当我们运行程序时我们会发现自定义的跟踪信息会自动出现在VS的输出窗口中——使我们能看到程序的递归过程。 你也可以选择为你的程序设置一个自定义跟踪监听器——这样跟踪点的输出信息就会被重定向到它里面而不是VS的输出窗口里。 跟踪点——运行自定义的宏 上周我在伦敦做了一次演讲 听众中有个人问了这样一个问题有没有可能当击中一个跟踪点时自动输出所有的局部变量。 这个功能不是内置在VS中的 但是可以通过在VS中写一个自定义的宏来启用它然后设置一个跟踪点当它被击中时调用这个宏。 为了实现这个目的 打开VS中的宏窗口工具-宏-宏菜单命令。然后在项目管理器“MyMacros”结点下面 选择模板或者新建一个模板如添加一个名为“UsefulThings”的 模板 再将下面的VB宏代码贴到模板里并保存它 Sub DumpLocals() Dim outputWindow As EnvDTE.OutputWindow         outputWindow DTE.Windows.Item(EnvDTE.Constants.vsWindowKindOutput).Object Dim currentStackFrame As EnvDTE.StackFrame         currentStackFrame DTE.Debugger.CurrentStackFrame         outputWindow.ActivePane.OutputString(*Dumping Local Variables* vbCrLf) For Each exp As EnvDTE.Expression In currentStackFrame.Locals             outputWindow.ActivePane.OutputString(exp.Name exp.Value.ToString() vbCrLf) Next End Sub 上面的宏代码依次检测当前堆栈获取所有的局部变量并将其显示在输出窗口。 使用DumpLocals自定义宏 在下面这个简单的应用程序中我们可以利用自定义的“DumpLocals”宏 在上面的Add方法的return语句上按F9设置一个断点。 右击断点选择“命中条件…”菜单命令 将弹出以下对话框上例中我们选中了“打印信息”的单选框再手工指定希望输出的变量 而这里 我们选中“运行宏”的单选框使它指向我们创建的自定义宏UsefulThings.DumpLocals 我们仍然选中“继续执行”单选框这样能保证当跟踪点被击中时程序依然能够继续执行。 运行程序 现在当我们按F5运行程序当调用Add方法时我们将看见以下输出出现在VS输出窗口中。 注意当跟踪点被击中时宏是如何自动列出各个变量名及其值的。 总结 VS调试器功能非常丰富。 我强烈建议大家抽出一些时间来学习它的所有功能。 以上的技巧和诀窍只是很多大家没有真正意识到的功能中的一小部分。 我之前写过其他一些 关于VS2010调试器改进的博客包括数据标签固定断点导入导出保留最后值变量 等等。 我将发表更多关于VS2010的智能跟踪和转储文件调试支持的博文。这些技术提供了很多非常酷的新功能会让程序(包括产品中的程序)的调试变得非常简单和强大。 也请务必看看Scott Cate很棒的 VS2010技巧和诀窍系列你可以学习如何更好的利用VS。他有一些非常棒的免费视频和博客。 也要看看Jim Griesmer很棒的 VS调试技巧和诀窍系列。 他有许多很好的可以利用的技巧和诀窍。 希望这能对您有所帮助。 Scott 转载于:https://www.cnblogs.com/yymn/p/5341945.html
http://www.zqtcl.cn/news/683328/

相关文章:

  • 临沂手机网站建设珠海手机网站建设价格
  • 56m做图片视频的网站是什么软件开发和大数据哪个前景好
  • 郑州网站建设哪家做快消品的网站
  • 太原做网站费用东莞it外包
  • 深圳网站关键词优化公司集团网站建
  • 网站建设项目合同传奇手游网站
  • 如何学习网站建设app申请付费网站
  • 微网站开发平台案例重庆网站设计哪家公司好
  • 快递空包网站建设网站的首页怎么做的
  • 青海手机网站建设北京网站建设推荐华网天下
  • 网站网站建设公司孩子学编程网上课程哪家好
  • 跨境电商网站建设方案书江门网页制作
  • 门户网站建设定做如何使用域名访问网站
  • 做网站后台运营这个工作怎么样建设网站销售
  • 两学一做网上答题网站做网站域名是赠送的吗
  • 江苏住房城乡建设厅网站WordPress上传Excel
  • 广州淘宝网站建设济南高新区网站建设
  • 如何注册一个网站长沙的科技公司
  • 温州网络公司网站建设永久免费云linux服务器网页
  • 中国教育网站官网网站建设是半年的持久战
  • 为什么营销型网站比普通网站建站贵常州seo排名收费
  • 商贸公司寮步网站建设极致发烧学网站建设基础
  • 二手汽车手机网站模板四川百度推广排名查询
  • 做火情监控网站需要用什么系统做一个网站多少费用
  • 成都建设网站首页贺州网站建设
  • 硚口区建设局网站海绵宝宝的网页设计html源代码
  • 旅游网站建设合同成年做羞羞的视频网站
  • 海门网站建设制作道德建设 网站
  • 苏州 规划建设局网站网页设计师培训费用图
  • 怎么做视频解析的网站QQ空间可以建设网站吗