首页 > C/C++开发工具专区 > VC技术 > 轻松实现Visual C++源代码规范整理
2006
10-12

轻松实现Visual C++源代码规范整理

如果你是一名VC程序员,你是否被一个问题所困扰?项目小组有编程规范要求严格执行,但是项目进度紧张,每天都有大量的代码需要完成。很难做到既能保证开发进度,又能编写出良好风格、缩进规范的代码。如果采用其他工具对源文件进行代码整理,又需在VC之外重新打开源代码,整理结果不能直接在VC中查看编译。能不能在VC中集成一种工具,轻松点击VC按钮即可整理源码呢?回答是有。

  下面我就介绍一个名为astyle的开源代码整理工具以及在VC开发环境中集成配置的方法。可以迅速实现在VC中进行代码整理的功能,希望能给你一定的帮助。

  1、 访问http://sourceforge.net/projects/astyle,下载astyle包,包括源文件、可执行文件、使用说明等。

  2、 拷贝astyle.exe到c:\winnt\system32下。

  3、 接下来配置VC,添加astyle代码整理功能。

  1) 在VC中新建菜单项”格式整理”。在工具栏上点击右键打开Customize窗口,在Tools标签页新建一个菜单项:”格式整理”,并在Command中输入菜单项对应外挂工具程序当前所在路径:”C:\winnt\system32\astyle.exe”。







  2) 在Arguments中输入外挂工具程序配置参数–style=ansi ${FileName}${FileExt}。其中 –style=ansi表示选择使用ANSI 风格格式和缩进。当然也可选用其他风格,可选的风格和样例如下:

  –style=ansi:ANSI 风格格式和缩进





namespace foospace
{
 int Foo()
 {
  if (isBar)
  {
   bar();
   return 1;
  }
  else
   return 0;
 }
}

  –style=kr :Kernighan&Ritchie 风格格式和缩进





namespace foospace {
 int Foo() {
  if (isBar) {
   bar();
   return 1;
  } else
   return 0;
 }
}

  –style=linux :Linux 风格格式和缩进





namespace foospace
{
 int Foo()
 {
  if (isBar) {
   bar();
   return 1;
  } else
   return 0;
 }
}

  –style=gnu :GNU 风格格式和缩进





namespace foospace
{
 int Foo()
 {
  if (isBar)
  {
   bar();
   return 1;
  }
  else
   return 0;
 }
}

  –style=java :Java 风格格式和缩进





class foospace {
 int Foo() {
  if (isBar) {
   bar();
   return 1;
  } else
   return 0;
 }
}

  更详细的配置参数可参加见astyle随机文档。

  ${FileName}${FileExt}:表示整理当前编辑的源文件。

  在Initial directory中输入$(FileDir)参数:表示初始运行路径。设置该项值后,astyle启动的初始路径为当前文件路径。







  3) 为使在astyle.exe整理代码时不弹出Dos框并将运行结果直接显示到VC中,需选中”Use Output Window”选项,如图所示。







  4) 为方便astyle工具的使用,还可以将该菜单项添加到便捷工具栏中。同样也是在Tools下面的Customize中进行设置,设置时注意工具图标编号,如图所示:







  5)至此设置工作基本完成,还有一点注意事项需要说明。因为astyle对代码进行整理时整理的对象是硬盘中的源文件,如果未对源文件进行保存就直接进行代码整理的话,VC会弹出源文件重新载入提示框,如果选择是,则会丢掉刚刚开发的代码,这无疑是程序员最痛苦的事;选择否又会使整理操作白费了。所以为保证开发代码及时得到保存,需在整理前保存修改源文件。要实现该功能,只需在Tools中的option设置中,将Save options设为:”Save before running tools”,如图所示:







  好,大功告成,代码整理只需轻轻松松点击VC工具栏按钮,立即在VC编辑框中出现规范的源代码。

  下面让我们来享受一下使用VC集成astyle整理代码的愉快结果吧!

  1、整理前,凌乱的代码行:







  2、整理后的代码行:







留下一个回复