本文列出了在编写程序过程中的几个非常实用的操作方式,通过这些操作方式,可以在一定程度上减少重复操作、提高编码效率、改善编程体验。

列模式操作

列操作是一项很常用且实用的功能,可以一次性修改不同的行。

在 VS2010 中已经存在该操作方式,下面表格列出 VStudio 及另外几个常用编辑器的操作方式。

编辑环境 操作方式
VStudio 按着 Alt 键,同时使用鼠标左键进行列操作
VS Code 按着 Alt 键,同时使用鼠标左键单击需要操作的行
Sublime Text 按着 Shift 键,同时使用鼠标右键键进行列操作
Notepad2 按着 Alt 键,同时使用鼠标左键进行列操作

代码片段(Code Snippets)

编写程序过程中会有很多重复的代码片段,如 if 语句、for 语句等,如果编辑器能够在输入 if、for 等关键词后自动填充剩余部分,无疑会在减少枯燥操作的同时节省大量时间。

在 VS2010 中,没有提供 C++ 的代码片段支持,需要安装 Visual Assist X 才能使用;在 VS2019 中则提供了相关支持。可以通过 Tools->Code Snippets Manager… 查看当前环境支持的语言及代码片段所在的目录,我们可以根据需要添加新的代码片段或修改已有的。


以 if 语句为例,输入 if 后,若是 C++ 文件则 单击 Tab 即可填充剩余部分;若是 C# 文件则需要 双击 Tab 才能填充剩余部分。也可以直接使用 Edit->IntelliSense->Surrouond With… (Ctrl+K+S) 来选择需要的输入。

复制(Duplicate)

复制(Ctrl+C)和粘贴(Ctrl+V)是两个操作,在 VS2019 中可以使用 Duplicate(Ctrl+D) 一个操作来代替。

对于单行代码,把光标放在该行任意位置,对于多行,选中代码块,然后使用快捷键 Ctrl+D 即可完成复制粘贴操作。

转到(Go To)

在使用 Sublime Text 和 VS Code 的过程中,通过 Ctrl+P 弹出的输入框可以进行多项操作,如查找文件(输入文件名)、跳转到某一行(输入:行号)、查找符号(输入@符号名)等,非常方便实用。

在 VS2019 中也有类似的输入框,通过 Edit->Go To 下的子菜单即可弹出,效果如下:


在 VS2019 中快捷键 Ctrl+P 对应的操作是打印,由于该操作并不常用,可以将其移除,然后将 Edit->Go To->Go To File… 的快捷键设置为 Ctrl+P。

如下图所示:1.删除之前的快捷键;2.输入新的快捷键;3.设置使之生效。


转到定义(Go To Definition)

当要查找一个变量、函数或类等的定义时,选中查找对象,可通过右键菜单中的菜单项 Go To DefinitionF12进行查找。

在 VS2019 中,可以同过 Ctrl+Click (鼠标左键单击)进行快速查找;在 VS2010 中,使用 Productivity Power Tools 插件中的 Ctrl+Click Go To Definition 功能可以实现同样的操作。

自动换行(Word Wrap)

当一行代码比较长以至于无法在当前行中完全显示时,需要拖动编辑器底部的滚动条进行移动来显示被遮挡的部分。使用 自动换行 可使没有显示的部分自动转到下一行进行显示,通过菜单项 Edit->Advanced->Word Wrap (Ctrl+E+W) 来进行设置。

VS2010 也具有该功能。

显示效果:


其它操作

在 Edit 菜单下包含大量的其它操作,对于常用的操作如果能够熟练的使用其快捷键,也能进一步提高编程体验。具体功能菜单项及其对应的快捷键可以在 Edit 下找到,此处不再赘述。

- - - End - - -



欢迎扫码订阅我的微信公众号,以获得最佳阅读体验。

本文作者: Lzl678
本文链接: https://www.cnblogs.com/Lzl678/p/10645154.html
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!

VS2019 实用操作的更多相关文章

  1. 提高开发效率的 Eclipse 实用操作

    工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个“器”.本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行编程开发,避免鼠标分 ...

  2. Chrome 开发者工具实用操作

    Chrome 开发者工具实用操作 https://umaar.com/dev-tips/

  3. KiCAD实用操作

    KiCAD实用操作之一:自动编辑线宽 今天偶然间发现的一个比较实用的功能,算是KiCAD的一个优点吧(或许是在AD上面没发现):当整个PCB布完线或者在布线过程中,我们有可能需要对某个线的宽度进行调整 ...

  4. 能够提高开发效率的Eclipse实用操作

    工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个“器”.本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行编程开发,避免鼠标分 ...

  5. 能够提高开发效率的 Eclipse 实用操作

    工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个“器”.本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行编程开发,避免鼠标分 ...

  6. Netcat实用操作

    写久了web倦了,第n次开始尝试网络开发,于是熟悉一下常用工具. 尝试了一下netcat来测试服务器,或者充当客户端都异常好用.于是记录一下常用的一下命令 1. 充当服务器,或者客户端进行访问 通过n ...

  7. Myeclipse学习总结(8)——Eclipse实用操作

    工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个"器".本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行 ...

  8. 开发工具IDE从入门到爱不释手(五)更多实用操作

    更多实用技巧 Tabs分屏和独立 日志链接及浏览器 设置浏览器 本地修改历史 三秒钟不操作,自动保存一个版本 右键--Local History--Show History 查看方法调用情况 按住方法 ...

  9. Excel实用操作

    目地 不能熟练操作Excel的程序员不是好策划. 一片区域填充相同数据 1.用鼠标框选一片区域,松开鼠标,不要点其它单元格 2.直接输入输入数据,输完之后,按Ctrl+Enter,选中的区域就会填充相 ...

随机推荐

  1. Redis 小记

    最近感觉自己像是又回到了起点,知识层面上落人太多,尤其是去年早些时候几乎啥也没干成,觉得什么也不会了,只能再次从零开始,所以决定再喝两个疗程的巩固巩固. 话不多说,我们先来看看 Redis 官方是怎么 ...

  2. Ansible自动化运维工具安装与使用实例

    1.准备两台服务器,要确定网络是通的.服务器当然越多越好啦....Ansible的简介和好处我就不多说了,自己看百科去(*╹▽╹*) IP:192.168.139.100 IP:192.168.139 ...

  3. 在linux(centos)系统安装nginx教程

    最近在切换服务器操作系统,简单记录一下 一.安装nginx需要如下环境  1.gcc  编译依赖gcc环境,如果没有gcc环境,需要安装gcc yum install gcc-c++  2.PCRE ...

  4. AssetsUtils【读取assets、res/raw、./data/data/包名/目录下的文件】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 封装了以下功能: 1.读取assets目录下的资源html.文件.图片,将文件复制到SD卡目录中: 2.读取res/raw目录下的文 ...

  5. Python+requests+unittest+excel实现接口自动化测试框架

    一.框架结构:  工程目录 二.Case文件设计 三.基础包 base 3.1 封装get/post请求(runmethon.py) import requests import json class ...

  6. SpringBoot启动原理及相关流程

    一.springboot启动原理及相关流程概览 springboot是基于spring的新型的轻量级框架,最厉害的地方当属自动配置.那我们就可以根据启动流程和相关原理来看看,如何实现传奇的自动配置 二 ...

  7. SpringBoot实用小技巧之动态设置SpringBoot日志级别

    有时线上问题我们用打日志的方式来观察错误或埋点参数,但由于这些日志如果都打出来会占用大量存储空间而且覆盖了一些有效信息,所以线上级别一般设置INFO,调试级别用作特殊情况下.此时如果线上想查看调试级别 ...

  8. 深度学习之卷积神经网络(CNN)详解与代码实现(一)

    卷积神经网络(CNN)详解与代码实现 本文系作者原创,转载请注明出处:https://www.cnblogs.com/further-further-further/p/10430073.html 目 ...

  9. 前端javascript如何阻止按下退格键页面回退 但 不阻止文本框使用退格键删除文本

    这段代码可以: document.onkeydown = function (e) { e.stopPropagation(); // 阻止事件冒泡传递 e.preventDefault(); // ...

  10. java 深克隆(深拷贝)与浅克隆(拷贝)详解

    java深克隆和浅克隆 基本概念 浅复制(浅克隆) 被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象.换言之,浅复制仅仅复制所拷贝的对象,而不复制它所引用的对 ...