You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过clang-format实现同一行放置多个枚举标签?

解决方法

要让clang-format将大型枚举的成员按同行排列的格式输出,你需要在现有配置中添加**BreakEnum**选项:

在你的.clang-format配置里加入:

BreakEnum: false

这个选项的作用是控制枚举成员是否强制换行:

  • 默认值为true,会让每个枚举成员单独占一行(也就是你不想看到的格式)
  • 设置为false后,clang-format会尽量将枚举成员放在同一行,直到达到ColumnLimit(你配置的是80)时才会换行到下一行,完全符合你想要的可读性格式。

修改后的完整配置如下:

BasedOnStyle: LLVM
UseTab: Never
IndentWidth: 4
TabWidth: 4
BreakBeforeBraces: Attach
AllowShortIfStatementsOnASingleLine: false
IndentCaseLabels: false
ColumnLimit: 80
AccessModifierOffset: -4
FixNamespaceComments: true
NamespaceIndentation: All
BreakEnum: false

应用这个配置后,你的枚举会被格式化为:

enum class A {
    TAG, OTHER_TAG, OTHER_OTHER_TAG,
    OTHER_OTHER_OTHER_TAG...
};

内容的提问来源于stack exchange,提问作者Orfeas Zografos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 17:21:31