<工具类>

说明:以下快捷键属于白菜个人设定与VS默认的快捷键可能不符,仅作为功能展示。

[书签]

Ctrl+F6 在当前行创建书签或删去当前书签
Shift+F6 到上一个书签
F6 到下一个书签
Ctrl+Shift+F6 打开书签管理器窗口

[查找与替换]

Ctrl+F //在当前打开的代码文档本页查找
Ctrl+H //在当前打开的代码文档本页替换
Ctrl+Shift+F //在整个解决方案或仅当前项目中查找
Ctrl+Shift+H //在整个解决方案或仅当前项目中替换

 

<代码与编辑器相关功能>

[格式化代码]

Ctrl+Alt+回车 //当前打开的整个文档格式化

如果你不希望全文档格式化还可以设置"仅对当前行或选中的文本进行格式化"

PS:关于格式化的代码风格可到这里自行修改

 

[任意代码文本注释]

Ctrl+shift+Z //选中多行注释
Ctrl+Shift+X //取消选中注释

[重复当前行与删除该行]

通常Ctrl+D是重复行的操作在大多IDE或代码编辑器中实现,不过很可惜VS2017之前的VS没有直接的重复行的操作

如果你用的是VS2017及以上那么自带叫“Duplicate”的关键字
Duplicate line in VS2017 中文

顺便说说删除该行
其实这个就考察你对Shift+Fn+←、Shift+Fn+→的熟悉程度了(还是87键的键盘好),你要是104键的键盘那么Fn+←对应Home、Fn+→对应End(个人感觉不是很方便)

 

[给函数加注释]

Alt+Shift+Z //先将光标移动至要添加注释的函数名或者光标选中函数名按下快捷键后即可开启

PS:此功能在白易插件中已实现

 

[成员手动列出]

当你在输入完代码符号后,因其他原因光标已经离开,

再次回来时,你希望在该字符后面立即显示未展开的成员(shift+空格)

于是就可以后续展开了

 

 

[代码符号查询]

//因为C/C++这门语言是有符号定义声明和定义的(其他语言或许只有定义处)

Ctrl+F12    //转到声明
F12             //转到定义(不过事实上,F12也可以来回切换)
Alt+F12      //查看声明,这个是新版VS自带的弹出小窗(不占用独立的文档标签页)直接查看声明处

Shift+F12    //查找所有引用

 

Alt + ~键显示函数参数:

 

[导航跳转]

当你按F12后想返回之前的光标导航位置,
Alt+←    //先前导航
Alt+→    //先后导航

 

[符号名重构]

F2 //对当前选择的符号名进行所有当前项目内的引用查找并给出重构该符号名称的窗口

 

[多行同时编辑]

按住Ctrl+Alt,然后光标点击到其他位置

就能同时在多处输入了

匹配相同单词编辑:先选择要编辑的单词或字符,再按一下 Alt + Shift + ;,会自动匹配并选中所有相同的单词,然后开始编辑;也可以仅使用 Alt + Shift + . 只匹配选择下一个相同的单词。

 


<编译运行与调试>

[简单编译与运行程序]

F7 //编译当前正在打开的项目(仅生成当前项目exe,注意不是整个解决方案)
F5 //运行但不调试(支持F7之后按F5立即运行不再编译除非代码有改动)
Ctrl+F7 //生成整个解决方案

Ctrl+Q //设为启动项目

 

[调试相关]

Ctrl+F5或F9   //调试运行当前项目的exe,如遇到断点后再按该快捷键可继续运行
Shift+F5          //停止调试
Ctrl+Shift+F5 //重新启动调试
F8                   //打断点或取消断点
Ctrl+F8           //禁用/启用断点(个人建议直接在断点管理器中搞)
Alt+F8            //断点管理窗口(或者在调试视图下自动给出)
F10                 //步入(白菜已修改,VS默认是F11步入,我意思是10为小则进入,但我感觉改后这样顺序好点)
F11                 //步过
Shift+F10 //运行到光标所在代码处(这不是暴力改EIP的破坏性,如果当前光标处对于当前运行的程序不可达则不会运行到此处,相当于隐藏版临时断点)

不建议[设置下一语句]这个是直接改EIP的(会跳过所有的执行直接设置当前CPU执行位置)

Shift+F11 //跳出当前代码所在的函数(即该函数的所在调用处的下一行)

设置条件断点:
可在按F8开启断点(或鼠标点击左侧导航条)之后鼠标右键去点击它

当然也可以在断点管理器中去搞