【发布时间】:2014-11-02 03:39:36
【问题描述】:
std::decay存在的原因是什么?
std::decay在什么情况下有用?
【问题讨论】:
-
在标准库中使用,例如将参数传递给线程时。那些需要按价值存储,所以你不能存储例如数组。相反,存储一个指针等等。它也是一个模仿函数参数类型调整的元函数。
-
decay_t<decltype(...)>是一个不错的组合,看看auto会得出什么结论。 -
放射性变量? :)
-
std::decay() 可以做三件事。 1 它能够将 T 的数组转换为 T*; 2.可以去掉cv限定符和引用; 3. 将函数 T 转换为 T*。例如衰减(void(char))-> void(*)(char)。似乎没有人在答案中提到第三种用法。
-
谢天谢地,我们在 c++ 中还没有夸克
标签: c++ c++11 standard-library