如何在 Visual Studio 代码中修改 C++ 的代码格式?

How can I modify the code formatting for C++ in Visual Studio Code?

至此安装C++扩展工具后,我可以使用Ctrl + K + F 自动格式化我的 C++ 代码。但是,我想做一些修改,例如我想强制指针对齐到类型附近,而不是紧挨着变量名,比如这个规则:

# Force pointers to the type for C++.
DerivePointerAlignment: false
PointerAlignment: Left

我该如何修改?我试图创建一个 .clang 格式的文件,但它不起作用。

我用的是clang-format,集成的很好,可配置性很强。参见 https://code.visualstudio.com/docs/cpp/cpp-ide#_code-formatting

经过一些实验,简单的解决方案是在用户设置中添加这一行(settings.json):

"C_Cpp.clang_format_fallbackStyle": "{ PointerAlignment: Left}"

但是,此设置允许我保留以前的设置而不会破坏我的功能线:

"C_Cpp.clang_format_fallbackStyle": "{ BasedOnStyle: WebKit, ColumnLimit: 120, PointerAlignment: Left}"

使用“BasedOnStyle: Visual Studio” 例如这一行:

"C_Cpp.clang_format_fallbackStyle": "{ BasedOnStyle: Visual Studio, ColumnLimit: 120, PointerAlignment: Left}"

不起作用。这可能是一个错误。 我使用了 Visual Studio 代码版本 1.26.1.

此外,仍将应用工作区文件夹外的 .clangformat。因此,如果此文件已损坏,自动格式化将不起作用。