日常使用中的一些VAssistX使用小窍门,简单总结下

一,修改VAssistX默认缓存文件路径,防止默认C盘被占用空间过大

1、  打开注册表HKCU\Software\Whole Tomato,新建UserDataDir,数值为要修改的路径,如下图:

2、  C:\Users\{用户名称}\AppData\Roaming\VisualAssist\ 为AutoText目录,拷贝到新目录下

3、  C:\Users\{用户名称}\AppData\Local\VisualAssist\为符号表目录,拷不拷贝无所谓

4、  删除旧的AutoText和符号表目录,会发现C盘瞬间多了好几个G

二,利用Visual AssistX的特性快速适应C++代码规范

Visual AssistX是一款功能非常强大的VC、VS插件,可以非常便利用其自动完成和着色的功能,让代码的输入速度和可读性大大的增强。在实际的开发过程当中,很多人只利用到了它的这两个功能,在下面我将介绍下,利用Visual AssistX实现按代码规范要求的文件头注释,函数注释,以及查找代码,代码重构的相功能。

快速的加入文件头注释:

例如有如下c++编程规范的要求,源文件头部应该进行注释,列出版权说明,文件名,修改日志等。具体示例如下:

[示例]:

/**   @file file.h

*     @note XXX Technology Co., Ltd. All Right Reserved.

*     @brief 这里填写本文件的摘要。

*

*     @author           xxx

*     @date               2004/02/14

*

*     @note 下面的note和warning为可选项目

*     @note 这里填写本文件的详细功能描述和注解

*     @note 历史记录:

*     @note V2.0.0  添加了一个导出接口

*

*     @warning 这里填写本文件相关的警告信息

*/

Visual AssistX自带的文件头注释和我们公司要求的格式有所不同,所以我们首先修改它的格式,在Viusal Studio的VAssistX菜单(前提是已经安装过这个软件)中,选择tools项中的Edit VA Snippets…项,如下图:

将弹出如下对话框:

左侧的树上如#d,#u代表着一些常用的快捷输入,比如输入#d就会自动弹出#define的候选输入,然后敲击回车便会自动补全相应的功能,我们就是加入我们的文件头的注释。

首先为代码头加入快捷输入前几个字符,我这里为了不和其实的有所冲突,便以“/***”做为快捷输入的字符,也就是说当输入“/***”时,就会弹出我们自定义的文件头注释。

  1. 点击工具栏的新建按钮 。
  2. 在右侧输入如下:                    

其中Title是这个Snippet的标题,这里写的是“File header detailed”,Shortcut就是你设置的快捷键,这里设置的是“/***”,Despcription就是你自已经对这个Snippet的详细描述。

  1. 在内容里输入如下:
    /**  @file        $FILE_BASE$.$FILE_EXT$

*   @note  XXX Technology Co., Ltd. All Right Reserved.

*   @brief   $Breif$

*

*   @author  $Author$

*   @date    $YEAR$/$MONTH$/$DAY$

*

*   @note   detailed functional description of this document and comments

*   @note   History

*

*   @warning warning message related to this document

*/

大部分内容可以看的明白,有几处“$FILE_BASE$”,“$FILE_EXIT$等是Visual AssistX的保留字,$FILE_BASE$是不包括扩展名的文件头,$FILE_EXIT$是文件扩展名,当我们插入这些内容里,Visual AssistX会自动替换为文件名,$YEAR$/$MONTH$/$DAY$是如“2011/5/20” 的方式插入日期。你也可以自定义保留字,像此处$Breif$,$Author$是我们自己定义的,看英文的意思是文件简介和文件的作者,作用是,当你输入/***时,敲回车会弹出一个对话框,让你手动输入Breif和Author,看下图:

当输入/***时弹出你自定义的这个Snippets的标题,

直接敲回车:

Brief和Autor就是你自定义的保留字,你在这里边输入到你编写的这个C++文件的简介和作者,敲回车,就会自动加入文件头。如下图:

由于我把注释的颜色设置成灰色了,所以看不太清,实际如下:

/**  @file  WarnDlg.h

*   @note  XXX Technology Co., Ltd. *            All Right Reserved.

*   @brief  警告框

*

*   @author jiangxf

*   @date   2011/5/27

*

*   @note   detailed functional description of this document *   @note   History

*

*   @warning warning message related to this document

*/

以后每次就可以通过输入/***加入文件头了,避免每次都自己复制,一劳永逸。

加入函数注释:

我们的规范如下:

/**   @fn const char *TestClass::func1(char c,int n)

*     @brief      <这里填写函数的摘要>

*     @param c 参数描述.

*     @param n 参数描述.

*     @return  返回描述

*/

这个在Visual AssistX中已经有了,但是只是格式不同,我们首先在Viusal Studio的VAssistX菜单(前提是已经安装过这个软件)中,选择tools项中的Edit VA Snippets…项,在左侧找到Refactor Document Method。

然后在左侧的内容里输入

注意Title和Shortcut里的内容不要修改。使用函数注释按下面的方法:

在CPP的文件里找到你要加入注释的函数,将光标移到函数处,右键,选择Refactor菜单项里的Document Method,如下图:

因为我们定义注释里有个自定义的保留字$Brief$,所以在点击完Document Method时,会弹出对话框让你输入函数的概要。输入完点确定即可。

在Breif处输入函数简介。

/** @fn       CMutiroleDialog::ShowDialog

*  @brief    显示对话框

*  @param    QWidget * parent

*  @param    QString & strTitle

*  @return   void

*/

点击回车后生成上面的注释,其中$MethodArgs$会给你列出所有的函数参数,这当然也是自动生成的,你在每个参数后面加入参数的注释内容即可,这个当然不能自动完成,因为它也猜不出函数参数的意思~。

查找某个函数的功能:

Visual Studio的查找功能有些不太好用的地方,我现在介绍下这个插件的查找功能。

假如你要找一个函数在哪里被引用到,这个就非常方便了。

首先将鼠标移动到函数名称上,会出现一个倒三角号,

如果选择Find References,就可以显示在这个解决方案中,所以引用到这个函数的地方,如果选择Find Reference in File,它只用显示这个函数在当前的文件当中引用到的地方,查找的结果在:

会详细的显示出在哪个文件里,哪一行,还有哪个函数里引用到了这个函数,而且可以使用代码着色的功能显示,非常直观。

在上面的菜单当中,还可以直接选择重命名,这样就可以重命名所有引用到地方一起改变名称,这个可以自己试下。

自动加入函数实现的功能:

当你在头文件里写了一个函数时,每次都得到CPP文件中补上函数的实现,其实你可以在头文件的函数处,右键,选择Refactor,Create Implements的,这样,就会在C++中自加入函数的实现,而不用手动再去写。

如上图。

这个Refactor中,可以实现好多功能

  1. 可以加入类的成员变量
  2. 加入相似的函数
  3. 如果你先在CPP写好了函数,可以直接在.h中加入声明
  4. 如果一些函数和变量是其他头文件中的,而你还没有include,还可以自动include进来
  5. 改变名称
  6. 选中一块代码,可以把这块代码抽象成一个函数(就是加一个函数体将这块选中的代码包起来,使之成为一个独立的函数)
  7. 实现接口,如果你继承的父类有虚拟函数,他们的直接实现这些接口,并分别加入到头文件和CPP文件中。

包围功能

包围功能是这样的,当你选中一块代码,可以直接用{}或()包围起来,也可以在这块代码中加入if包起来。可以加的包围功能,如上图所示。它会直接在你选中的代码外面,加入你选择的东西。

转载于:https://www.cnblogs.com/widget90/p/6128590.html

VAssistX使用小窍门相关推荐

  1. 17个Python小窍门

    python中相对不常见却很实用的小窍门. 空谈不如来码代码吧: 交换变量值 给列表元素创建新的分隔符 找列表中出现次数最多的元素 核对两个字符是否为回文 反向输出字符串 反向输出列表 转置2维数组 ...

  2. javascript 中的eval方法 小窍门

    eval()函数 JavaScript有许多小窍门来使编程更加容易. 其中之一就是eval()函数,这个函数可以把一个字符串当作一个JavaScript表达式一样去执行它. 举个小例子: var th ...

  3. 10个小窍门,让你轻松准确搜索。

    10个小窍门,让你轻松准确搜索. 在今天,用户可以通过搜索引擎轻松找出自己想要的信息,但还是难以避免结果不尽如人意的情况.实际上,用户仅需掌握几个常用技巧即可轻松化解这种尴尬. 下面介绍10个在进行G ...

  4. 洗衣小窍门集锦 [ZZ]

    发信人: zhuangw (庄子·逍遥游), 信区: LIFE 标  题: 洗衣小窍门集锦 [ZZ] 发信站: BBS 碧海青天站 (Wed Aug  9 11:14:53 2006), 转信 一.清 ...

  5. 人人都应该知道的身体小窍门!

    1.如果你的喉咙痒,挠你的耳朵! 当耳朵里的神经被刺激,会造成咽喉的反射作用,引起肌肉痉挛,这种痉挛会缓解发痒. 2.体验超声波听觉! 右耳比左耳更善于听快节奏的谈话,而左耳更善于听取音乐的曲调. 3 ...

  6. 嵌入式入门要知道的五个小窍门-心得

    对于很多即将毕业的学生和在社会打拼的底层技术者再说,对于嵌入式的发展和掌握的技术层次是迷茫的?他们不知道如何学习,其实掌握学习嵌入式没有想象中的那么难,学习它也是有窍门的.这边如果你想学习却没有方向可 ...

  7. EDM营销的三个小窍门-EDM营销必看

    在进行EDM营销的时候,有三个窍门,大家一定要看,而且要认真的看.下面笔者就为大家总结一下EDM营销的三个小窍门吧. 第一.明确EDM的核心目标:督促客户行动. 让客户产生预期动作,即点击相关链接产生 ...

  8. 参加技术会议的一些小窍门

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:参加技术会议的一些小窍门. 转载于:https://www.cnblogs.com/fresky/p/6 ...

  9. 如何蒸螃蟹?教你蒸螃蟹3个小窍门

    螃蟹是人间美味,学会蒸螃蟹是吃货们必学的技能之一.如何蒸螃蟹呢?你可知不是每个人都能与美味"结缘".螃蟹因性寒和胆固醇高,不适宜脾胃虚寒或胆固醇高的人群食用.想要健康吃螃蟹,学会蒸 ...

  10. WebPart的Web部件页部署时发生错误--小窍门

    使用dwp方式部署自定义的webPart,web.config中也将它们进行了安全注册.在门户中通过dwp方式导入都是正常的.可是当想使用frontpage修改页面的时候发现无法打开部署了webpar ...

最新文章

  1. 深度学习-强化学习-图神经网络-自然语言处理等AI课程超级大列表-最新版
  2. 转 Debugging AutoCAD 2017 using Visual Studio 2015
  3. 第九章 组合模型在信贷风控中的应用
  4. Go报错:more than one character in rune literal
  5. android studio zlib,在Android Studio 3.1中构建项目时出现“压缩执行失败”错误
  6. 云漫圈 | 学Python还是Java, 8张漫画带你全面分析
  7. python重新运行安装_无法重新安装Python?
  8. html运行显示无法发布,我无法发表文章当我打开发表文章,总在网页的左下角出现网页发生错误 爱问知识人...
  9. 错误 执行Transact-SQL语句批处理时发生了异常。无法设置主体'sa'的凭据
  10. 传统企业如何面对电子商务的发展
  11. 硬盘模式IDE和AHCI
  12. 《黑客之道》- 全网最详细的kali系统安装教程
  13. 学计算机基础微课视频教程,计算机基础教学对微课的应用
  14. 计算机系大神和数学系系花,小甜文:《一贱钟情,大神求放过》1v1双C,男主小奶狗,全程高甜...
  15. 乐有家携手法大大,实现租房签约数字化
  16. mysql bit类型_MySQL bit类型
  17. BUUCTF笔记之Web系列部分WriteUp(三)
  18. MySQL8.0.17 - Multi-Valued Indexes 简述
  19. 哈工大计算机考研 跨考,2011年哈工大计算机考研经验_跨考网
  20. pid:1 nid:null exception:channel:can't restart by no select live node

热门文章

  1. 使用轻语言搭建简易网站
  2. Oracle连接数据库提示 ORA-12638:身份证明检索失败
  3. The redemption of Nokia - 诺基亚的救赎
  4. JavaWeb(servlet+jsp/springboot+html)微信校园卡冲值
  5. 企业呼叫业务外包需慎重
  6. java-封装一个向github仓库上传文件的工具
  7. C语言入门-结构类型
  8. 通过反射模拟springIoc
  9. 软工最后一节课的感悟-我们和国外的差距
  10. 蓝桥杯青少组(Python组)考核知识范围