C++中的类型查询(type trait)模板

2023年8月10日,周四上午


C++中的类型查询(type trait)模板用于提供关于类型特征的信息,

帮助在编译期间进行类型检查和类型推导。

这些类型查询模板都定义在  头文件中

常见的类型查询模板

  1. std::is_array:用于判断类型 T 是否是数组类型。
  2. std::is_pointer:用于判断类型 T 是否是指针类型。
  3. std::is_reference:用于判断类型 T 是否是引用类型。
  4. std::is_const:用于判断类型 T 是否是常量类型。
  5. std::is_volatile:用于判断类型 T 是否是易失类型。
  6. std::is_integral:用于判断类型 T 是否是整数类型。
  7. std::is_floating_point:用于判断类型 T 是否是浮点类型。
  8. std::is_enum:用于判断类型 T 是否是枚举类型。
  9. std::is_class:用于判断类型 T 是否是类类型。
  10. std::is_function:用于判断类型 T 是否是函数类型。
  11. std::is_void:用于判断类型 T 是否是 void 类型。
  12. std::is_same:用于判断类型 T 和类型 U 是否相同。
  13. std::is_base_of:用于判断类型 Derived 是否是类型 Base 的派生类。
  14. std::is_convertible:用于判断类型 T 是否可隐式转换为类型 U
  15. std::is_trivial:用于判断类型 T 是否是平凡类型。
  16. std::is_pod:用于判断类型 T 是否是POD类型(Plain Old Data)。
  17. std::is_abstract:用于判断类型 T 是否是抽象类类型。
  18. std::is_default_constructible:用于判断类型 T 是否具有默认构造函数。
  19. std::is_copy_constructible:用于判断类型 T 是否具有复制构造函数。
  20. std::is_move_constructible:用于判断类型 T 是否具有移动构造函数。

你可能感兴趣的:(我的博客,c++,算法,开发语言)