VC中的快捷键

news/2024/7/4 0:47:05 标签: 汇编, wizard, ide, mfc, build, class
class="baidu_pl">
class="article_content clearfix">
class="htmledit_views">

 

使用VC IDE时经常用到的一些快捷键。

CTRL+TAB:在IDE打开的文件间切换。我喜欢在IDE里同时打开很多文件,用CTRL+TAB来回切换,浏览代码很方便。LEO的习惯跟我相反,他看完一个文件后会顺手把文件关掉。有一次他看到我的IDE里居然开了几十个文件,惊讶坏了,呵呵。


CTRL+SHIFT+SPACE:快速查看函数声明。有了这个以后查MSDN的次数大大减少。


CTRL+]:快速定位{}。看代码时常用,另外用来检查大括号是否配对很方便。相比之下page up/page down用的比较少,因为老是觉得这个定位代码不够精确。


CTRL+SHFT+]:选中大括号之间的代码。代码段拷贝的时候常用。在一次移植一段C程序到C++程序时学会的。


F12:快速定位到宏/变量/函数的定义。VC6第一次用要先生成BROWSE INFO,速度比较慢,VS2003可以直接定位。


ALT+F8:格式化代码。常和CTRL+A或者CTRL+SHIFT+]连用。我看到格式不整齐的代码时会很难受。


CTRL+X, CTRL+C, CTRL+V:有时候跟别人开玩笑说,其实编程挺简单的,会CTRL+C/CTRL+V就行。


CTRL+Z, CTRL+Y:UNDO, REDO。修改代码时常用。


CTRL+F2, F2:设置、查看书签。在VS2003中一度习惯了CTRL+K, K/CTRL+K/N, CTRL+K/P的组合,后来由于来回在VC6、VS2003之间切换,还是觉得统一用CTRL+F2, F2比较好。


ALT+-->, ALT+<--:光标移到下个单词。用惯了绝对比用鼠标定位快。

HOME, END:定位到行首、行末。经常配合ALT+ARROW使用,定位光标很快。

CTRL+HOME, CTRL+END:定位到文件首/尾。

CTRL+DEL:删空格很方便。


CTRL+S:保存文件。我一般写一两行代码保存一次,养成习惯了。这使我从来没有因意外事件丢过代码。

 

F7:BUILD。估计大家都用过。

CTRL+F7:编译单个文件。经常用来快速测试代码是否有语法错误。

F4:定位编译错误。以前用的很多,现在比较少用,因为编译警告比较多。

ALT+F9:打开break point窗口。设置条件断点时常用。
CTRL+G:跳到指定行。调试时则常和CTRL+F11连用。
CTRL+W:打开CLASS WIZARD窗口。写MFC程序时常用。

F5:调试程序。相对来说CTRL+F5用的比较少。
SHIFT+F5:停止调试程序。偶尔会用。
F10:step over。调试的时候用的最多了。
F11:step into。也很常用。F11的另一常用法是启动调试程序并停在程序入口点。
F9:设置/清除断点。
CTRL+F9:disable 断点。
CTRL+F11:查看class="tags" href="/tags/HuiBian.html" title=汇编>汇编代码。我最喜欢用的功能之一。在DEBUG的时候的一大习惯就是切换成源代码/class="tags" href="/tags/HuiBian.html" title=汇编>汇编混合显示模式。我的经验是,C/C++代码经常会骗你,但class="tags" href="/tags/HuiBian.html" title=汇编>汇编不会。
CTRL+SHIFT+F10:设置下一行运行语句。最喜欢的功能之一,非常好用。很久以前抓一个很难重现的BUG时第一次学会了这个功能,之后就喜欢上了。熟悉以后能节省很多调试时间。

常用的就这么多,其他操作一般都通过鼠标完成。嗯,以后写个专门统计快捷键操作的addon,统计结果应该会比较有趣。


http://www.niftyadmin.cn/n/1516874.html

相关文章

rabbitmq实战指南 pdf_建议收藏!深度剖析RabbitMQ可靠性消息投递以及实践方案

一般而言&#xff0c;如果你选择RabbitMQ&#xff0c;那肯定就是把可靠性放在第一位。毕竟&#xff0c;RabbitMQ可是金融行业消息队列的标配。如果把性能放在第一位&#xff0c;那毫无疑问&#xff0c;必须是Kafka。但是&#xff0c;可靠性毕竟是相对的&#xff0c;就拿大火的阿…

PMDK libpmemlog 例程1 持久化log记录

libpmemlog用于持久化记录log文件&#xff0c;采用append的方法记录。 libpmemlog API说明&#xff1a;http://pmem.io/pmdk/manpages/linux/master/libpmemlog/libpmemlog.7.html Key&#xff1a; pmemlog_create()  // 创建持久化的log内存 pmemlog_open()  // 打开已创…

tcp第三次握手服务器发送消息,TCP三次握手分析

微信图片_20190425152657.png为什么要进行三次握手&#xff1f;第一次握手是客户端向服务端发消息&#xff0c;询问你有没有接收消息的能力&#xff1f;确保消息能准确发送出去&#xff0c;告诉服务端我有写的能力&#xff1b;第二次握手是指服务端向客户端回消息&#xff0c;标…

POJ-1274 The Perfect Stall

题目链接&#xff1a;http://poj.org/problem?id1274 题目大意&#xff1a; 有n头牛和m个牛棚&#xff0c;现在牛要产奶&#xff0c;但是每个牛只在自己喜欢的牛棚才产奶&#xff0c;求最多的产奶量。 解题思路&#xff1a; 二分图的最大匹配。 邻接矩阵实现&#xff0c;…

打印函数总结RETAILMSG(..) DEBUGMSG(..) NKDbgPrintfW(..)

不管在WinCE5.0还是在WinCE6.0中&#xff0c;我们在调试驱动或者应用的时候都会用到打印函数。在驱动里面&#xff0c;我们可能会用DEBUGMSG(..)&#xff0c;RETAILMSG(..)&#xff0c;还有NKDbgPrintfW(..)。在我们使用这些打印函数调试我们的程序之前&#xff0c;我们需要实现…

Linux工具之numactl

NUMA(Non-Uniform Memory Access)字面直译为“非一致性内存访问”&#xff0c;对于Linux内核来说最早出现在2.6.7版本上。这种特性对于当下大内存多CPU为潮流的X86平台来说确实会有不少的性能提升&#xff0c;但相反的&#xff0c;如果配置不当的话&#xff0c;也是一个很大的坑…

apache 网站转nginx_终于有人把Nginx说清楚了,图文详解!

点击上方 "JudyGirl"关注, 星标或置顶一起成长前言想必大家一定听说过 Nginx&#xff0c;若没听说过它&#xff0c;那么一定听过它的"同行"Apache 吧&#xff01;Nginx 的产生Nginx 同 Apache 一样都是一种 Web 服务器。基于 REST 架构风格&#xff0c;以统…

POJ-1469 COURSES

题目链接&#xff1a;http://poj.org/problem?id1469 题目大意&#xff1a; 给你p门课程和n个学生&#xff0c;一个学生可以选0门&#xff0c;1门&#xff0c;或者多门课程&#xff0c;现在要求一个由p个学生组成的集合&#xff0c;满足下列2个条件&#xff1a; 1.每个学生…