C++ type_traits 头
-
定义
type_traits 定义了一系列类以获得有关编译时的类型信息。标头包含:- 助手类 :帮助创建编译时常量的标准类。
- 类型特征:以编译时常量值的形式获取类型特征的类。
- 类型转换:类通过将特定的转换应用于现有类型来获取新类型。
类型的基本特征是可以对其进行分类的类别。 这是有关这些类别如何重叠的图表:主要类别 复合类别 fundamental void std::nullptr_t scalar object integral arithmetic floating point compound pointer member object pointer member pointer member function pointer enum union class* array l-value reference reference r-value reference function -
类
函数/类/模板 描述 integral_constant 积分常数(类模板) true_type 真型(类) false_type 假类型(类) is_array 是数组(类模板) is_class 是非联盟类(类模板) is_enum 是枚举(类模板) is_floating_point 是浮点数(类模板) is_function 是函数(类模板) is_integral 是不可分割的(类模板) is_lvalue_reference 是左值引用(类模板) is_member_function_pointer 是成员函数指针(类模板) is_member_object_pointer 是成员对象指针(类模板) is_pointer 是指针(类模板) is_rvalue_reference 是右值引用(类模板) is_union 是工会(类模板) is_void 是空的(类模板) is_arithmetic 是算术类型(类模板) is_compound 是复合类型(类模板) is_fundamental 是基本类型(类模板) is_member_pointer 是成员指针类型(类模板) is_object 是对象类型(类模板) is_reference 是引用类型(类模板) is_scalar 是标量类型(类模板) is_abstract 是抽象类(类模板) is_const 是const限定的(类模板) is_empty 是空类(类模板) is_literal_type 是文字类型(类模板) is_pod 是POD类型(类模板) is_polymorphic 是多态的(类模板) is_signed 是签名类型(类模板) is_standard_layout 是标准布局类型(类模板) is_trivial 是琐碎的类型(类模板) is_trivially_copyable 可轻松复制(类模板) is_unsigned 是无符号类型(类模板) is_volatile 符合挥发性(类模板) has_virtual_destructor 具有虚拟析构函数(类模板) is_assignable 可分配(类模板) is_constructible 是可构造的(类模板) is_copy_assignable 副本是否可分配(类模板) is_copy_constructible 可复制构造(类模板) is_destructible 可破坏的(类模板) is_default_constructible 是默认可构造的(类模板) is_move_assignable 可移动分配(类模板) is_move_constructible 可移动构造(类模板) is_trivially_assignable 可分配的(类模板) is_trivially_constructible 易于构造(类模板) is_trivially_copy_assignable 简单复制可分配(类模板) is_trivially_copy_constructible 可以简单地复制构造(类模板) is_trivially_destructible 可轻易破坏的(类模板) is_trivially_default_constructible 默认情况下是可构造的(类模板) is_trivially_move_assignable 轻而易举地分配(类模板) is_trivially_move_constructible 可以轻松构造(类模板) is_nothrow_assignable 可分配,不抛出异常(类模板) is_nothrow_constructible 可构造,不抛出异常(类模板) is_nothrow_copy_assignable 是否可分配复制不引发异常(类模板) is_nothrow_copy_constructible 复制构造是否可引发任何异常(类模板) is_nothrow_destructible 不可破坏(类模板) is_nothrow_default_constructible 是默认可构造的,不抛出异常(类模板) is_nothrow_move_assignable 是否可移动分配不引发异常(类模板) is_nothrow_move_constructible 可移动构造是否抛出异常(类模板) is_base_of 是(类模板)的基类 is_convertible 可转换(类模板) is_same 是相同类型(类模板) alignment_of (类模板)的对齐 extent 数组维度范围(类模板) rank 数组等级(类模板) add_const 添加const资格(类模板) add_cv 添加const volatile资格(类模板) add_volatile 添加易变的资格(类模板) remove_const 删除const资格(类模板) remove_cv 删除简历资格(课程模板) remove_volatile 删除易变的资格(类模板) add_pointer 添加指针(类模板) add_lvalue_reference 添加左值引用(类模板) add_rvalue_reference 添加右值引用(类模板) decay 衰减类型(类模板) make_signed 签名(类模板) make_unsigned 设为未签名(类模板) remove_all_extents 删除所有数组范围(类模板) remove_extent 删除数组范围(类模板) remove_pointer 删除指针(类模板) remove_reference 删除引用(类模板) underlying_type 枚举的基础类型(类模板) aligned_storage 对齐的存储(类模板) aligned_union 对齐的联合(类模板) common_type 普通类型(类模板) conditional 条件类型(类模板) enable_if 如果满足条件则启用类型(类模板) result_of 通话结果(类模板)