C++ Visual Studio 2012“;“聪明的”;缩进定制
我使用VisualStudio 2012,并为C++文件启用了智能缩进。2我想自定义智能缩进的行为,以便格式化输入的代码,使之符合我公司的编码风格。< /P> 如何定制智能缩进行为的所有细节 例如,当我输入此代码时,智能缩进的格式与此完全相同:C++ Visual Studio 2012“;“聪明的”;缩进定制,c++,visual-studio,visual-studio-2012,C++,Visual Studio,Visual Studio 2012,我使用VisualStudio 2012,并为C++文件启用了智能缩进。2我想自定义智能缩进的行为,以便格式化输入的代码,使之符合我公司的编码风格。< /P> 如何定制智能缩进行为的所有细节 例如,当我输入此代码时,智能缩进的格式与此完全相同: #include <cstdlib> #include <string> using namespace std; struct Foo { const string mA; const int mB;
#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()
{
}
如何自定义智能缩进的行为?我不希望使用任何外部工具,如VisualAssistX
1:通过工具选项文本编辑器
2:我还将tabstops设置为4,并插入空格。查看MS Visual Studio SDK,可在此处找到: 特别是要重写VewFilter类中的HandleSmartIndent:
每当您在编辑器中按Enter键时,就会调用该函数。不幸的是,这并不像在配置对话框中更改某些规则那么简单。一个丑陋的解决方案是:
Foo(const string& a,
const int b,
const string& c)
: mA(a)
, mB(b)
, mC(c)
{
}
出于某些可恶的原因,这是我见过的唯一让VS正确缩进混乱的方法
Foo(const string& a,
const int b,
const string& c)
: mA(a)
, mB(b)
, mC(c)
{
}