简介
std::decay是C++获取类型的一种方式,它定义在<type_traits>头文件中。
#include <type_traits>
 
模型
template< class T >
using decay_t = typename decay<T>::type;
//(since C++14)
 
使用示例
template<typename T>
static void Func(int& d, T&& s)
{
	using U = typename std::decay<T>::type;
	cout << "Size:" << sizeof(U) << endl;
}
int main()
{
	int8_t rValue = 0;
	int a = 1;
	Func(a, a);
	Func(a, rValue);
}
 
效果如下




















