有没有办法以 clang 格式禁用 "SpacesInBraces"?

Is there a way to disable "SpacesInBraces" in clang-format?

我想要这个:

int x{ 0 };

看起来像这样:

int x{0};

但我在 the documentation 中没有看到它的选项。

有:

但我没有看到大括号的选项。这在 clang 格式中可行吗?

编辑: 发布的第一个答案使用 Cpp11BracedListStyle。问题在于它会阻止数组中的换行符。因此,即使是文字数组中的 100 个元素也不会中断。这是一个太大的副作用,无法接受。

你可以用 Cpp11BracedListStyle 来做到这一点。

来自docs

If true, format braced lists as best suited for C++11 braced lists.

Important differences:

  • No spaces inside the braced list.
  • No line break before the closing brace.
  • Indentation with the continuation indent, not with the block indent.