相关疑难解决方法(0)

为什么添加`const`使通用引用成为rvalue

我一直在阅读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分配给参考参数时,是否会执行此操作.

c++ templates c++11 c++14 forwarding-reference

23
推荐指数
1
解决办法
2863
查看次数

标签 统计

c++ ×1

c++11 ×1

c++14 ×1

forwarding-reference ×1

templates ×1