VS2010利用宏为函数添加注释
来源:互联网 发布:微淘号达人和淘宝达人 编辑:程序博客网 时间:2024/05/06 00:59
为了阅读代码及修复BUG的方便,公司里面函数的注释都是固定的格式,每次添加注释都是从原来写好的地方复制来一段,然后一项一项的去修改。作为程序员大军中的一员,要发挥懒的特性,一懒到底,网上查了好久,再参考VC6.0里自带的宏,终于勉勉强强写了一个宏来自动添加函数注释,一般的函数都可以用了,有小错误的地方也只能手动改了。先上个公司规定的函数的格式:
// ---------------------------------------------------------------// 名称: CopyData// 功能: 图元之间拷贝数据// 变量: [in,out] des -- 目标图元// [in] src -- 原始图元// 返回: 无// 编写: 天蓬,20121009// ---------------------------------------------------------------
下面是参考了N多文章查了N多资料弄来的宏代码(没办法,谁让咱是菜鸟呢):
Sub FunctionSign() 'DESCRIPTION 函数签名 Dim obj obj = Now() Dim mo As Integer Dim da As Integer Dim funct As String '保存选择的行 Dim ret As String Dim func As String '去除空格后的整个函数原型 Dim fName As String '函数名 Dim fPara As String '函数参数字符串 Dim paras() As String Dim temps() As String Dim flag1, flag2, flag3 As Integer Dim DocSel As EnvDTE.TextSelection DocSel = DTE.ActiveDocument.Selection If DocSel.Text = "" Then Exit Sub End If funct = DocSel.Text func = Trim(DocSel.Text) flag1 = InStr(func, " ") ret = Left(func, flag1 - 1) flag1 = InStr(func, "::") If flag1 = 0 Then flag1 = InStr(func, " ") func = Right(func, Len(func) - flag1) Else func = Right(func, Len(func) - flag1 - 1) End If flag2 = InStr(func, "(") fName = Left(func, flag2 - 1) func = Right(func, Len(func) - flag2) flag3 = InStr(func, ")") fPara = Left(func, flag3 - 1) paras = Split(fPara, ",") For i As Integer = 0 To paras.Length - 1 paras(i) = Trim(paras(i)) temps = Split(paras(i)) paras(i) = temps(temps.Length - 1) Next DocSel.NewLine() DocSel.Text = "// ---------------------------------------------------------------" DocSel.NewLine() DocSel.Text = "// 名称: " + fName DocSel.NewLine() DocSel.Text = "// 功能: " DocSel.NewLine() DocSel.Text = "// 变量: " If paras.Length = 0 Then DocSel.Text = "无" ElseIf paras.Length = 1 And paras(0) = "" Then DocSel.Text = "无" Else DocSel.Text = "[in] " + paras(0) + " -- " For j As Integer = 1 To paras.Length - 1 DocSel.NewLine() DocSel.Text = "// [in] " + paras(j) + " -- " Next End If DocSel.NewLine() DocSel.Text = "// 返回: " If ret = "void" Then DocSel.Text = "无" End If DocSel.NewLine() DocSel.Text = "// 编写: 天蓬," + CStr(Year(obj)) mo = Month(obj) da = Day(obj) If mo < 10 Then DocSel.Text = "0" + CStr(mo) Else DocSel.Text = CStr(mo) End If If da < 10 Then DocSel.Text = "0" + CStr(da) Else DocSel.Text = CStr(da) End If DocSel.NewLine() DocSel.Text = "// ---------------------------------------------------------------" DocSel.NewLine() DocSel.Text = funct End Sub
先凑合用着吧,等熟悉一些了再整完美一些。
2014.6.12修改:
上面的宏需要选中整个函数头部才能正常使用,不太方便,所以可以添加一句
DocSel.SelectLine()
在
DocSel = DTE.ActiveDocument.Selection
这一句代码之后。这样,只要把光标放到函数头部所在行就可以了。
0 0
- VS2010利用宏为函数添加注释
- VS2010利用宏快速添加注释(函数描述,修改注释等)
- VC6.0 添加函数注释宏,VS2010同样可以添加
- VS2010中利用Visual Assist X添加文件头和函数注释
- 【安装】VS2010中为类、函数代码添加版权注释信息
- VS2010 如何使用宏添加注释
- vs2005 为函数自动添加注释
- VS 2005 为函数自动添加注释
- 使用DocStrings为python函数添加注释
- vs2005 为函数自动添加注释
- vs2005 为函数自动添加注释
- vs 为函数自动添加注释
- VS2010自动添加头注释
- VS2010 C++ 添加注释模板
- VS2008利用宏添加注释模板
- Visual Studio 2010利用宏添加注释
- VS2008利用宏添加注释模板
- 为VS2010添加背景图
- HttpURLConnection上传文件
- web.xml部分基本标签的作用,菜鸟记录
- shell脚本自动登录FTP实现上传下载
- java 发送邮件 例子 (带附件的) 使用org.apache.commons.mail
- JDK1.6生成webservice及访问
- VS2010利用宏为函数添加注释
- WRTNode(MT7620) 通过USB启动OpenWRT过程记录(上)
- 如何显示word文档的目录
- PIM-SM协议内核触发机制及协议运行机制记录
- Memcached真的过时了吗?
- 删除map、list集合元素总结
- TeXworks中文乱码问题
- 程序员职业规划发展
- Android 短信备份