2013-02-26 81 views
7

我正在使用Visual Studio 2012,并为C++文件启用了智能缩进。 我想定制智能缩进的行为,以便对输入的代码进行格式化,以符合我公司的编码风格。Visual Studio 2012“智能”缩进自定义

如何自定义智能缩进行为的所有微小方面?

例如,当我输入验证码,它正是这样智能缩进格式:

#include <cstdlib> 
#include <string> 
using namespace std; 

struct Foo 
{ 
    const string mA; 
    const int mB; 
    const string mC; 

    Foo(const string& a, 
     const int b, 
     const string& c) 
     : 
    mA(a), 
     mB(b), 
     mC(c) 
     { 
     } 
}; 

int main() 
{ 
} 

这其中大部分是我想要的,除了结肠引入初始化列表中,第一项初始化器列表和构造函数体的缩进级别。我想要这些格式化为这样,我想Visual Studio自动为我做:

Foo(const string& a, 
    const int b, 
    const string& c) 
: 
    mA(a), 
    mB(b), 
    mC(c) 
{ 
} 

我如何定制智能缩进的行为?我宁愿不使用任何外部工具如Visual协助十


:通过工具>选项>文本编辑器>C/C++>标签>缩进

:我也有tabstops设置为4,插入空格。

回答

0

一个丑陋的解决方案是这样的:

Foo(const string& a, 
    const int b, 
    const string& c) 

    : mA(a) 
    , mB(b) 
    , mC(c) 
{ 
} 

其中,对于一些恶劣的原因,是我见过的让VS正确地缩进那些乱七八糟的唯一途径。