clang常见配置

0

.clang-format

BasedOnStyle: Google
UseTab: Never
TabWidth: 4
IndentWidth: 4
ColumnLimit: 512
AlignConsecutiveAssignments: true
AlignConsecutiveDeclarations: true

.clang-tidy

# -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
Checks: >
  misc-*,
  bugprone-*,
  modernize-*,
  performance-*,
  readability-*,
  -llvm-*,
  -abseil-*,
  -google-*,
  -fuchsia-*,
  -readability-function-size,
  -readability-magic-numbers,
  -readability-identifier-length,
  -modernize-use-trailing-return-type,
  -bugprone-easily-swappable-parameters,
  -readability-redundant-access-specifiers,
  -readability-function-cognitive-complexity,
  -misc-non-private-member-variables-in-classes
CheckOptions:
  - key: modernize-use-nullptr.NullMacros
    value: "NULL"
  - key: readability-function-size.LineThreshold
    value: "128"
  - key: readability-function-size.ParameterThreshold
    value: "8"
  - key: readability-function-size.StatementThreshold
    value: "128"

命令run-clang-tidy -p build -extra-arg=-std=c++17或者clang-tidy main.cpp --config-file=./.clang-tidy -- -I ./include/ -std=c++17