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,则修改的类型type
是remove_extent<U>::type *
。否则,如果
is_function<U>::value
为 true,则修改的类型type
是add_pointer<U>::type
。否则,修改的类型
type
是remove_cv<U>::type
。
要求
标头:<type_traits>
命名空间: std