modernize-type-traits

将形式为 traits<...>::typetraits<...>::value 的标准库类型特征转换为 traits_t<...>traits_v<...>

例如

std::is_integral<T>::value
std::is_same<int, float>::value
typename std::add_const<T>::type
std::make_signed<unsigned>::type

将转换为

std::is_integral_v<T>
std::is_same_v<int, float>
std::add_const_t<T>
std::make_signed_t<unsigned>

选项

IgnoreMacros

如果为 true,则不会诊断宏中定义的特征。

注意:宏内部的代码将永远不会发出修复。

#define IS_SIGNED(T) std::is_signed<T>::value

默认值为 false