c++ - 如何避免 clang-format 将两个单独的 '>' 格式化为 shift?

标签 c++ c++03 clang-format

当我使用 clang 格式化我的 C++ 代码时,我遇到了一个问题:

priority_queue<int, vector<int>, greater<int> > q;

将自动格式化为:

priority_queue<int, vector<int>, greater<int>> q;

两个单独的 '>' 将被格式化为一个 shift >>。

那么我应该如何配置.clang-format文件来避免这种情况呢?

最佳答案

您可以使用标准选项。您需要 C++03 选项(包括 C++98),因为这会在模板中格式化双 > 以在它们之间包含一个空格。

Standard: Cpp03

您甚至可以改用 Auto,这样 clang-format 就可以自动检测所使用的 C++ 版本。

关于c++ - 如何避免 clang-format 将两个单独的 '>' 格式化为 shift?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46872489/

相关文章:

c++ - 如何使用 clang 格式自动缩进具有 4 个空格的 C++ 类?

c++ - 如何找到字符串的内存地址?

c++ - 错误 C2327 : not a type name, 静态或枚举器 - 仅限 MSVC14

c++ - 您将如何在调度程序中实现此自适应 'fudge factor'?

c++ - 将 A 类 vector 重新解释为 B 类 vector

linux - 将 clang-format 工具添加到 makefile 中的现有项目

C++:Switch 语句与查找表的性能

c++ - 为什么我需要重新声明部分模板特化的方法/成员?

c++ - 想要 ostringstream 修改传递的字符串

c++ - 如何仅应用一种 clang 格式的操作?