我的 C++ 代码中有以下行:
std::cout << "done" << "\n";
Run Code Online (Sandbox Code Playgroud)
clang-format 会进入哪个
std::cout << "done"
<< "\n";
Run Code Online (Sandbox Code Playgroud)
无论。我编辑了以“Break”或“Align”开头的每个选项:
AlignAfterOpenBracket: DontAlign
AlignArrayOfStructures: None
AlignConsecutiveMacros: 'false'
AlignConsecutiveAssignments: 'false'
AlignConsecutiveBitFields: 'false'
AlignConsecutiveDeclarations: 'false'
AlignEscapedNewlines: DontAlign
AlignOperands: DontAlign
AlignTrailingComments: 'false'
BreakBeforeBinaryOperators: None
BreakBeforeConceptDeclarations: false
BreakBeforeBraces: Attach
BreakBeforeInheritanceComma: false
BreakInheritanceList: AfterComma
BreakBeforeTernaryOperators: false
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: AfterColon
BreakStringLiterals: false
Run Code Online (Sandbox Code Playgroud)
我怎样才能让它不这样做呢?版本是14.0.0
clang-format 总是错误地将连续的内容<< "string"放在单独的行上。这是一个已知错误,于 2020 年 2 月首次报告。
您的配置适用于以下语句:
// This doesn't get split over multiple lines;
// it only happens if the column limit is exceeded.
int x = 1 << 2 << 3;
Run Code Online (Sandbox Code Playgroud)
通常,仅当行太长时:
但是,当 a<<后面跟着字符串文字时,无论如何,clang-format 都会将其放在单独的行上。