Visual Studio调试
一:C# CODING 技巧
1:TODO

然后 CTRL + W + T,打开任务列表,选中 Comments,就会显示所有待做的任务

2:打开所在的文件夹
右键单击任何一个文件选项卡, 选择"打开所在的文件夹",或在 Solution Explorer 的文件上面点右键;
3:比对同一个文件

鼠标向下拖动红框内的图标。
4:按意愿编程
我把它定义为:按意愿编程,即,在写代码过程中,如果觉得需要使用到一个新类,可以先不用创建这个类,可以先如下这么编写,然后按 ALT + SHIFT + F12,选择 Generate 就会在当前空间下新生成一个类。很爽,不打断你的当前编码思路。同理,如果要创建一个新的方法,也可以这样来做,极大的加快了我们的编码速度。

5:重构
VS 提供了一些快速的重构技巧,比如 类变量 重构为 属性,我们可以右键找到 Refactor,然后选择相应的重构项,

6:Safe Delete
一个变量要删除,怎么知道这个删除是安全的,使用 Alt + Del;
二:C#调试
1:命令窗口
CTRL + D + I,可以在立即窗口中写一些临时的代码;
2:编辑并继续
选中下面的选项,可以让你在调试暂停中,修改代码,而不用重新启动,

3:执行
单步执行:F10
跳进方法:F11
跳出方法:SHIFT + F11
执行到光标处:CTRL + F10
4:修改运行中的某值
直接修改法,如下:

立即窗口法,,然后在立即窗口写代码吧,如下:

5:回退当前执行代码
比如,代码运行到了 49 行了,想回到 45 行,没关系,鼠标点中黄色箭头,从 49 行拖到 45 行就可以了,如下:

6:查看当前调用链
CTRL + D + C,打开 Call Stack 窗口,这在调试的时候非常有帮助;
7:从进程开始调试
有时候,不想启动 VS 直接进行调试,比如,网站部署在本机,想从运行中的状态开始调试当前浏览器页面,即可以用 Attack to Process 启动调试,如下:

8:When Hit
我记得在我第一次写 Socket 程序的时候,调试耗费了无数的生命值,如果当时就知道使用 When Hit 这个功能就会好很多,即,如果断点命中,要打印出什么,这个在调试异步或者多线程代码的时候特别有用,如下:

其中,变量名或者代码,要写在{}中。
三:快捷键
1:剪切复制
复制当前行:CTRL + C
剪切当前行:CTRL + X,这也可被用来当作删除当前行;
粘贴:CTRL + V
循环复制:CTRL + SHIFT + V
4:折叠和展开
折叠当前大纲:CTRL + M + M
展开当前大纲:CTRL + M + M
折叠全部大纲:CTRL + M + O
展开全部大纲:CTRL + M + P
5:断点
设置断点:F9
取消断点:F9
取消全部断点:CTRL + SHIFT + F9
条件中断:如下,设置条件,

紧接着,

6:注释
注释当前行及选中行:CTRL + K + C
撤销注释:CTRL + K + U
7:选择
选中当前单词:CTRL + SHIFT + 箭头
8:定位
向后定位(回到光标上次所在位置):CTRL + 减号
向前定位:CTRL + SHIFT + 减号
转到行:CTRL + G
9:查找
渐进式查找:CTRL + I,输入要查找的文本,再次按 CTRL + I
其它查找:CTRL + F,输入要查找的文本,查找方式,查
查找调用层次:CTRL + K + T,其结果如下,

10:切换
代码/设计窗口切换:F7 和 SHIFT + F7
打开文件间切换:CTRL + TAB
11:智能提示
重新弹出:Alt + →
12:缩进
单行|多行缩进:TAB
取消缩进:ALT + TAB
13:代码自动完成
你可以,敲入关键字(snippet) + TAB,如 Prop + TAB + TAB,生成一个属性。注意,两次TAB TAB是一个很好的东西,总是可以给我们生成意想不到的代码;
你还可以,还可以使用 CTRL + K + S,查看其它的可以快速完成的代码;
在其它一些情况下,你还可以使用ALT + SHIFT + F12,也可以用来自动生成代码,不如实现一个接口,这个时候,在类的后面的接口上使用该组合键,就会弹出提示让你 Generate 实现。
14:声明与引用
查看声明:F12
查看引用:SHIFT + F12
15:格式化代码
自动格式化当前窗口的代码:CTRL + K + D
16:BUILD
BUILD 解决方案:F6
BUILD 当前项目:SHIFT + F6
Visual Studio调试的更多相关文章
- 用Visual Studio调试Windows和驱动程序
由于本人能力有限,翻译不足之处敬请谅解,欢迎批评指正:sunylat@163.com Visual Studio版本:Visual Studio 2015企业版,中文环境. MSDN原文:https: ...
- VISUAL STUDIO 调试
调试术语 Visual Studio调试之断点基础篇 Visual Studio调试之断点进阶篇 不能设置断点的检查步骤 Visual Studio调试之断点技巧篇 Visual Studio调试之断 ...
- 用Natvis定制C++对象在Visual Studio调试时如何显示
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:用Natvis定制C++对象在Visual Studio调试时如何显示.
- Visual Studio调试之避免单步跟踪调试模式
Visual Studio调试之避免单步跟踪调试模式 写完Visual Studio调试之断点进阶篇之后,想分享一下我常用的一些调试技巧,后面发现写之前,一些背景知识需要介绍一下. 下面是几篇今年2月 ...
- Visual Studio调试之断点进阶篇
Visual Studio调试之断点进阶篇 在上一篇文章Visual Studio调试之断点基础篇里面介绍了什么是断点,INT 是Intel系列CPU的一个指令,可以让程序产生一个中断或者异常.程序中 ...
- Visual Studio调试之断点基础篇
Visual Studio调试之断点基础篇 我曾经问过很多人,你一般是怎么调试你的程序的? F9, F5, F11, F…… 有很多书和文章都是介绍怎么使用Visual Studio编写WinForm ...
- 在 Visual Studio 调试器中指定符号 (.pdb) 和源文件
查找并指定符号文件和源文件:指定符号加载行为.使用符号和源服务器上:加载符号自动或在要求. 内容 查找符号 (.pdb) 文件 查找源文件 查找符号 (.pdb) 文件 说明 在之前的 Vis ...
- Microsoft Visual Studio调试监视器(MSVSMON.EXE)未能启动
在启动VS2010项目时,遇到如图所示"Microsoft Visual Studio调试监视器(MSVSMON.EXE)未能启动"的问题. 原因是VS2010安装路径(我的是D: ...
- Visual Studio 调试技巧[Command Window & Immediate Window ](Tips)
Visual Studio 调试技巧[Command Window & Immediate Window ](Tips) 1. immediate window 定义的一些 alias (// ...
- 调试 - Visual Studio调试
Visual Studio - 调试 异常处理机制 windows预定义了一系列的异常错误码,每种程序异常都有一个对应的错误码,windows系统将这些类似键值对关系的数据存储在异常处理表中(称为SE ...
随机推荐
- Github学习进阶-初露锋芒,通过命令行将本地git仓库推送到Github上面的仓库
前提: 1. 需要安装git 客户端. 能打开 git bash 命令行窗口. 2. 生成了ssh 秘钥,并添加到了Github上面. 一.在Github上面建立一个git仓库. 点击 + 号,在 ...
- echo
echo $echo [-e] [内容字符串]显示后面的内容,缺省选项表示将后面的内容原模原样的显示出来,如果后面接的字符串不用"",会默认以空格为分隔符输出多个串 可以配合She ...
- openfire+asmack搭建的安卓即时通讯(四) 15.4.10
之前的教程不知道你们成功了没,,,没成功可以问我啊=-= 第四篇博文是要实现发送消息的功能. 首先在我们登陆后的活动的layout里添加这样的两个控件,一个EditText和一个Button用于发送数 ...
- shell script 学习笔记-----if,for,while,case语句
1.if内的判断条件为逻辑运算: 2.if内的判断条件为目录是否存在,文件是否存在,下图先检验目录/home/monster是否存在,然后再检测/home/monster中的file.txt文件是否存 ...
- 【Javascript Demo】移动端访问PC端网页时跳转到对应的移动端网页
不想通过CSS自适应在PC端和移动端分别显示不同的样式,那么只能通过在移动端访问PC端网页时跳转到对应的移动端网页了,那么怎么跳转呢,网上也有很多文章说明,下面是本人测试有效的方式. 1.效果图 PC ...
- AC日记——石子归并 codevs 1048
1048 石子归并 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description 有n堆石子排成一列,每堆石子 ...
- php strcmp引起的问题
在官方的文档有这么一端说明: Note a difference between 5.2 and 5.3 versions echo (int)strcmp('pending',array()); w ...
- js判断滚动条到底部
判断滚动条到底部,需要用到DOM的三个属性值,即scrollTop.clientHeight.scrollHeight. scrollTop为滚动条在Y轴上的滚动距离. clientHeight为内容 ...
- 关于URL编码/javascript/js url 编码
一.问题的由来 URL就是网址,只要上网,就一定会用到. 一般来说,URL只能使用英文字母.阿拉伯数字和某些标点符号,不能使用其他文字和符号.比如,世界上有英文字母的网址 “http://www.ab ...
- D - Palindrome Partitioning (DP)
Description A palindrome partition is the partitioning of a string such that each separate substring ...