我一直在阅读Scott关于c ++ 11和14的最后一篇大师文章中的通用引用,尽管有一个参数分配给左值或右值类型的参考参数,但在它们之间存在一些被称为通用引用的东西,它可以推导出来l/rvalue基于传递的参数的类型特征.我可以理解是什么使得参数成为通用引用但是我不清楚的一个原因是为什么在类型参数中添加const const T&& p使得p为rvalue:
template<typename T>
void f(T&& param); // param is an universal reference
template<typename T>
void f(const T&& param); // param is an rvalue reference
Run Code Online (Sandbox Code Playgroud)
const分配给参考参数时,是否会执行此操作.