modernize-use-using

此检查将 typedef 的使用转换为 using 关键字。

之前

typedef int variable;

class Class{};
typedef void (Class::* MyPtrType)() const;

typedef struct { int a; } R_t, *R_p;

之后

using variable = int;

class Class{};
using MyPtrType = void (Class::*)() const;

using R_t = struct { int a; };
using R_p = R_t*;

检查器忽略 extern “C” { … } 块内的 typedef

extern "C" {
  typedef int InExternC; // Left intact.
}

此检查需要使用 C++11 或更高版本才能运行。

选项

IgnoreMacros

如果设置为 true,则检查不会在宏内部发出警告。默认值为 true

IgnoreExternC

如果设置为 true,则检查不会在 extern “C”` 范围内发出警告。默认值为 `false