Visual Studio 2010 之调用继承树Call Hierarchy
来源:互联网 发布:mac install repo 编辑:程序博客网 时间:2024/06/07 18:38
【篇首语】看到VS2010的这个功能,我真的是泪流满面啊!因为早在开博之初,我就提出过这个设想,调用继承树!不信,您可以自己去找找。当时我写博文只是幻想中建议可以有这样一个功能。没想到居然梦想成真了!!!
写程序离不开调试,调试离不开理清程序的执行流程。在以前的Visual Studio版本中,我们几乎都是调试的时候通过调用栈来查找函数间的调用关系,帮助调试的。调用栈虽然好用,但是只能在调试时使用,同时也只能串行,只有一条执行路径。另外,随着现代应用程序越来越复杂,调用栈已经无法满足我们分析程序逻辑的需要。所以在Visual Studio 2010中,微软为我们提供了新的程序逻辑分析工具:调用继承树(Call Hierarchy)窗口。
- 体验调用Visual Studio继承树窗口给我们带来的便利,我们可以打开Visual Studio 2010 CTP虚拟机中自带的示例项目DinnerNow – Management。在解决方案浏览器中,我们双击PSWorkflowMonitor.cs这个文件,将其在代码编辑器中打开。然后找到其中的 LoadWorkflowInstance函数,在这个函数上右键单击,在弹出的上下文菜单中选择“View Call Hierarchy”:
这样,我们就可以打开LoadWorkflowInstance函数的调用Visual Studio继承树窗口:
在调用Visual Studio继承树窗口中,我们可以像“爬树”一样,在这棵调用继承树的各个节点和对应的代码之间任意跳转:
◆跳转到代码
在调用Visual Studio继承树窗口中,我们可以在函数上点击右键,选择弹出菜单中的“Go To Definition”,就可以直接跳转到相应的代码。
同时我们可以注意到调用继承窗口的右边是“Detail Pane”,其中显示了当前选中函数所有的调用位置,我们只要双击其中的调用记录,就可以跳转到相应的函数调用位置。
◆创建或者删除调用继承树
当程序比较复杂的时候,我们的调用继承树也会“枝繁叶茂”,这样不利于我们的分析。在这种情况下,我们就可以把一个根节点中我们感兴趣的子节点设置为新的根节点,这样可以简化调用继承的深度,更加利于我们的分析。
◆改变调用继承搜索的范围
默认情况下,调用继承会搜索整个解决方案中的调用情况,如果我们的解决方案比较复杂,这就会使得调用继承树非常复杂,引入很多意义不大的调用关系。为了简化调用继承树,我们可以改变调用继承的搜索范围,将其限制在解决方案,当前项目或者当前文档。
- Visual Studio 2010 之调用继承树Call Hierarchy
- Visual Studio 2010 MFC Hierarchy Chart
- Visual Studio 2010 MFC Hierarchy Chart
- call LibPng In Visual Studio
- Visual Studio 2010 中的 Winsock 调用错误
- 在visual studio 2010中调用ffmpeg
- 在visual studio 2010中调用ffmpeg
- open call hierarchy
- visual studio动态库调用
- Visual Studio 2010 用后之感
- Visual Studio 2010敏捷之道
- Visual Studio 2010 TFS探索之旅
- Visual Studio 2010 TFS探索之旅
- visual studio 2010 插件之 Resharper
- Visual Studio 2010敏捷之道
- Visual Studio 2010 插件之Resharper
- 查看某个方法的外层调用(类似于eclipse的open call hierarchy功能)
- CALL 调用之DLL实现
- SQL SERVER中测试SQL语句的速度
- Form表单实现ASP.NET认证
- javascript动态创建可拖动、最大化、最小化的层
- Windows 中 SQLite3 使用(1) -- 配置
- Windows 中SQLite3 使用(2) -- 基本导出函数
- Visual Studio 2010 之调用继承树Call Hierarchy
- 手机软件开发平台逐个来数
- 隐藏磁盘的好办法,适合有收藏的朋友
- 在Windows下获取控制台(DOS)下可执行文件的标准输入输出
- jQuery学习前言
- linux字符界面与图形界面的转换——学习中
- CRUD
- FLASH
- Spring依赖注入方式