使用 Code Map 理解复杂代码1 ——Visual Studio2012
第一次知道code map是在Visual Studio Ultimate 2012自带的解说上面,当时认为十分好奇,所以查了查。结果一查就是好几天。原来Visual Studio Ultimate 2012有这么多我不知道的东西。
什么是code map?
简单的说。这个工具类似反向工具一样,能够帮我们把想要看的Class关系、 Function关系,用图表关联起起来,甚至还能够点两下后,高速的寻览;用了此功能后。会更加地想要使用双屏幕的冲动。
例如以下图:
上图能够看出program类有三个方法。
上图能够看到language不知道是什么,你可双击,右击选中在图上选择“在图上显示”,点击language,属性框里显演示样例如以下。
知道这是一个枚举类型,而且作为查询结果使用。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzA2NTAyMw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="200" height="200" alt="">
那这个查询结果究竟是干嘛的呢?下图能够看出。这个查询结果是给greetpeople方法使用。
创建或打开代码图
若要创建代码图,须要 2 以及具有 Visual C# .NET、Visual Basic .NET、适用于 Microsoft Dynamics AX 的 X++ 或 C++ 代码(有限支持)的解决方式。
能够通过下面方式创建代码图。
笔者表示代码图不是code map这个插件中的。而是vs自带的,假设你的没有仅仅能说你的vs2012须要更新了。
详细使用:
l 在解决方式资源管理器中右键单击某个项(如源文件或二进制文件),然后选择“在代码图上显示”。
这会为所选项创建代码图。
l 将某个项(如源文件或二进制文件)从解决方式资源管理器拖动到打开的代码图上,以在图中包括和/或突出显示该项。
l 右键单击编辑器窗体的空白区域,然后选择“在代码图上显示”。
这会创建新的空代码图。
l 在编辑器窗体中右键单击某个对象或类。然后选择“在代码图上显示”。
这会为所选项创建代码图。 还能够使用此菜单在代码图中查找全部引用或或显示相关项。
l 应用程序暂停时,在“调试”菜单上单击“代码图”button。
l 从打开的 IntelliTrace 文件里。或从“体系结构”菜单中作为依赖项关系图。
l 在你与使用 Premium 或 Professional 版本号的其它人共享代码图之前,请确保代码图上的全部项是可见的,比如隐藏项、展开的组和跨组链接
在这里,笔者经经常使用打开的 IntelliTrace 文件里,或从“体系结构”菜单中作为依赖项关系图。
仅仅要ctrl我须要的类或者方法(字段等)创建一个新的关系图就能够自己主动生成的了。
使用 Code Map 理解复杂代码1 ——Visual Studio2012的更多相关文章
- 一种解决Code Map与ReSharper冲突导致Visual Studio 2013 Peek Definition失效的办法
更正 3月6号: 经再次测试,单独使用Code Map或ReSharper,对Visual Studio的Peek Definition无影响,但是两者一起使用时,Peek Definition失效, ...
- 浅尝Code Map
使用代码图调试你的应用程序:https://msdn.microsoft.com/zh-cn/library/jj739835.aspx 使用 Code Map 理解复杂代码(视频): https:/ ...
- 微软良心之作——Visual Studio Code 开源免费跨平台代码编辑器
微软良心之作——Visual Studio Code 开源免费跨平台代码编辑器 在 Build 2015 大会上,微软除了发布了 Microsoft Edge 浏览器和新的 Windows 10 预览 ...
- Arch Linux下Visual Stdio Code在格式化C代码时报错
libtinfo.so.5: cannot open shared object file: No such file or directory Arch Linux下Visual Stdio Cod ...
- Visual Studio Code - 调试 Node.js 代码
官方的文档写的太好了!大家还是看参考资料吧. 参考资料: Debugging in Visual Studio Code Debug Node.js Apps using Visual Studio ...
- 前端JS面试题汇总 Part 2 (null与undefined/闭包/foreach与map/匿名函数/代码组织)
原文:https://github.com/yangshun/front-end-interview-handbook/blob/master/questions/javascript-questio ...
- UI5 Source code map机制的细节介绍
在我的博客A debugging issue caused by source code mapping里我介绍了在我做SAP C4C开发时遇到的一个曾经困扰我很久的问题,最后结论是这个问题由于Jav ...
- VS Code使用Git管理代码
Visual Studio Code(简称VS Code)是一个轻量级且强大的代码编辑器,后台是微软,支持Windows.Mac和Linux操作系统,拥有丰富的插件生态系统,可通过安装插件来支持C++ ...
- 使用code标签获得类似代码段的效果
几乎所有的浏览器都支持 code标签 code标签, 顾名思义,就是代码标签, imply tell browser, that 后面的部分是表示计算机代码. 因此, 浏览器可以根据自己的特点来显示这 ...
随机推荐
- Spring Cloud和Dubbo的对比
- js 鼠标拖拽元素移动
<!DOCTYPE html><html> <head> <title> </title> <style media="sc ...
- C++命名空间、标准库(std,全局命名空间)
背景 别人遇到的问题: C++ 全局变量不明确与 using namespace std 冲突 我遇到的问题与他相似,函数调用冲突 using namespace std; class compare ...
- 笔试算法题(11):Josephus环 & Fibonacci序列
出题:Josephus Cycle,约瑟夫环问题.k个数字连成一个环,第一个数字为1.首先从1开始计数删除第m个数字:然后从上次被删除的数字的下一个数字开始计数,删除第m个数字:重复进行第二步直到只剩 ...
- 笔试算法题(04):实现 string & memcpy & strcpy & strlen
出题:请实现给定String的类定义: 分析:注意检查标准类构造注意事项: 解题: #include <stdio.h> #include <string.h> /** * 检 ...
- [Python3网络爬虫开发实战] 1.7.1-Charles的安装
Charles是一个网络抓包工具,相比Fiddler,其功能更为强大,而且跨平台支持得更好,所以这里选用它来作为主要的移动端抓包工具. 1. 相关链接 官方网站:https://www.charles ...
- Go:二分查找
package main import "fmt" func BinarySearch(arr *[5]int, leftIndex int, rightIndex int, fi ...
- db2数据库,表相乘,直接扩大表数据
T1 表 SEQ表 想得到结果集为: 语句: SELECT * FROM (SELECT * FROM seq,t1) u LEFT JOIN t1 ON u.id=t1.id AND u.jjh=t ...
- MyBaties异常之 ORA-00918: 未明确定义列
原因: 如果a表与b表连接,且a与b中存在两个相同的字段,则必须指明字段是哪个表的 箭头所致位置没有指定ROOM_ID为那个表的,应修改为t1.ROOM_ID
- java 编码乱码问题
Tomcat的server.xml 文件Connector标签加上URIEncoding="utf-8": <Connector port=" protocol=& ...