如何阻止Visual Studio对多行模板后的代码自动缩进?
解决Visual Studio多行模板后类声明自动缩进的问题
我太懂这种恼人的感觉了——每次自动格式化把几百行代码莫名缩进,改起来简直浪费时间!其实你漏看了一个很容易忽略的格式化选项,试试下面的步骤就能解决:
- 打开VS的「Tools -> Options」,依次导航到「Text Editor -> C/C++ -> Formatting -> Indentation」
- 在这个页面里,找到**「Indent class/struct/union definitions after multi-line templates」**选项(大概翻译是「多行模板后缩进类/结构体/联合体定义」),把它的勾选取消掉
- 点击「确定」保存设置,再按
Ctrl+K,Ctrl+F试试自动格式化,应该就不会再出现整个类被不必要缩进的问题了
如果你的VS版本比较旧,这个选项的名字可能稍有不同,但核心都是控制多行模板后的类缩进行为。要是还是不行,可以检查一下有没有安装代码格式化类的扩展(比如ReSharper、ClangFormat),这些扩展可能会覆盖VS的默认设置,需要在扩展的配置里同步调整相关选项。
内容的提问来源于stack exchange,提问作者MC ΔT
相关产品推荐
相关产品推荐

