decay 类

生成按值传递的类型。 将类型设置为非引用、非常量、非易失,或者使指针从一个函数或数组类型指向该类型。

语法

template <class T>
struct decay;

template <class T>
using decay_t = typename decay<T>::type;

参数

T
要修改的类型。

注解

Decay 模板用于生成结果的类型,就像按值作为参数传递的类型。 类模板成员 typedef type 保持在以下几个阶段中定义的修改类型:

  • 类型 U 定义为 remove_reference<T>::type

  • 如果is_array<U>::value为 true,则修改的类型 typeremove_extent<U>::type *

  • 否则,如果 is_function<U>::value 为 true,则修改的类型 typeadd_pointer<U>::type

  • 否则,修改的类型 typeremove_cv<U>::type

要求

标头:<type_traits>

命名空间: std

另请参阅

<type_traits>