Visual Studio C++“在}上自动格式化完成的块”

4
Visual Studio有一个C#的设置,但我找不到C++的。"在}上自动格式化已完成的块"。我在做C#项目时经常使用此功能,现在回到C++(我更喜欢它),我想念这个功能了。我该如何设置?我猜我必须使用第三方插件或其他工具来完成此操作,但是我在搜索中找不到相关的内容。
此功能的作用:如果我有一段代码,并在其前面输入'{',然后在其后输入'}',则它将自动进行缩进以匹配使代码更易于阅读的缩进规则。
例如:
从一些代码开始:
{
    int i = 1;
    int j = 2;
    j += i;
}

在某个地方添加起始括号:
{
    int i = 1;
    int j = 2;
    {
    j += i;
}

添加一个结束括号,包含的代码会自动为我缩进:
{
    int i = 1;
    int j = 2;
    {
        j += i;
    }
}

聪明的话:使用 vim,这很简单,在输入 } 后,按下序列 <ESC>V%= ...当然,vim 不是真正的 Visual Studio :) - David Rodríguez - dribeas
4
@ATaylor:我撤销了你的编辑,因为这个问题与C++有关。它与一种用于编写C++代码的工具(一种非常流行的工具)有关,而且它特别涉及到该工具在该语言中的使用(而不是关于代码编辑器的语言中立问题)。此外,大多数人会根据语言标签筛选问题,通过完全删除它们,你注定使得这个问题无法被许多可能拥有答案的人看到。 - Benjamin Lindley
@BenjaminLindley 哦,我明白了。在这种情况下,我道歉。显然我判断错误并且过早下结论了。谢谢你提醒我。 - ATaylor
1
当编写新代码时,它是这样工作的,而在编辑现有代码时则不是。当我决定用括号括起来时,我希望结束括号能够缩进到现有代码中。所以,不,我现在要求的并没有发生。我正在处理一个庞大的旧代码系统并进行修复。这种情况比你想象的要多。 - GeekyGuy83
如果有帮助的话,我也安装了Visual Assist X。我还可以潜在地安装其他东西。 - GeekyGuy83
显示剩余3条评论
1个回答

2
这是在 Visual Studio 2013 中的操作。请确保你已经在选项中启用了这个功能,路径为:Text Editor->C/C++->Formatting->General。选项名为“当我输入一个 } 时自动格式化块”。

好的,我知道了。我目前正在使用VS2010,这可能是一个很好的理由,让我尽快升级。 - Ben

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接