使用 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 后面的部分是表示计算机代码. 因此, 浏览器可以根据自己的特点来显示这 ...
随机推荐
- windows下载安装mysql
一.下载mysql 1.下载地址 https://www.mysql.com/downloads/ 2.选择windows,如图 3.点击MySQL Install 4.现在版本是8.0.16,在弹出 ...
- Hadoop架构模型
1.hadoop 1.x架构模型:分布式文件存储系统:HDFSNameNode(主节点:管理元数据) secondaryNameNode(作用是合并元数据信息,辅助NameNode管理元数据信息)Da ...
- 德尔福 XE5 安卓权限设置
http://delphi.org/2013/10/delphi-xe5-android-uses-permissions/ The permissions required by a Delphi ...
- BZOJ 4519 不同的最小割 最小割树
题面: 把每两个点当成源汇,求N*(N-1)个最小割中不同的有多少个 N<=850 分析: 有这样一个结论:一张无向图不同的最小割最多有n-1个. 那么我们一定可以建出一棵树,使得这棵树中每两个 ...
- Python学习-列表的转换和增加操作
列表的转换和增加操作 列表的转换操作:可以将一个元组,字符串等转换成列表. str = "liuwenhao"; print(list(str)); // ['l', 'i', ' ...
- 零基础入门学习Python(27)--集合:在我的世界里,你就是唯一
知识点 集合:set set和dict类似,也是一组key的集合,但不存储value.由于key不能重复,所以,在set中,没有重复的key. 集合中的元素的三个特征: 1)确定性(元素必须可hash ...
- buf.equals()
buf.equals(otherBuffer) otherBuffer {Buffer} 返回:{Boolean} 返回一个 boolean 标识,无论 this 和 otherBuffer 是否具有 ...
- Python基础知识点总结
Python基础知识与常用数据类型 一.Python概述: 1.1.Python的特点: 1.Python是一门面向对象的语言,在Python中一切皆对象 2.Python是一门解释性语言 3.Pyt ...
- 82-Ichimoku Kinko Hyo 一目平衡表.(2015.7.3)
Ichimoku Kinko Hyo 一目平衡表 计算: 一目平衡图由五组参数合成,与现在常用的移动平均线吻合.参数基于各个长短周期的高低点,提供一明确简单的走势图.五个参数如下: 1.短轴快线 短轴 ...
- Uva 4916 Selling Cells(随机算法)
题意: 给定n个圆的 坐标 和半径, 求第一个圆与其他圆相交的面积占第一个圆的面积的多大. 分析: 如果从局部去想, 处理每个圆之间的关系, 求出他们与第一个圆的交集, 这样可能就会十分复杂了. 不妨 ...