我最近决定在我的C ++项目中包含一个.clang-format
文件,以使代码更加统一且易于阅读。我主要喜欢谷歌的默认设置,除了我想使用4个空格缩进而不是两个。
这个问题是当当前行溢出80个字符的列限制时,它会使某些语句更难读。例如,在溢出的if语句中:
if (some_condition || some_other_condition ||
yet_another_condition) {
// block starts here
}
yet_another_condition
的对齐方式与if-block开头的对齐方式相匹配,这使得在没有某种中断的情况下难以阅读。理想情况下,在这种情况下我想要发生的事情是这样的:
if (some_condition || some_other_condition ||
yet_another_condition)
{
// block starts here
}
但是,当前一行溢出到下一个时,我只想在新行上打开大括号,就像上面的例子一样。在所有其他情况下,我想在同一行上打开括号(if / for / while / switch等语句以及函数)。
是否可以在我的.clang-format
文件中指定此行为,同时保持其余的Google默认设置不变?
答案 0 :(得分:0)
clang格式工具允许使用BraceWrapping: Custom
指定自定义大括号换行,但它不够灵活,无法了解所需的上下文。
提高可读性的替代解决方案是使用大于4的延续缩进,例如, ContinuationIndentWidth: 8
。