首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >这是一个转发参考吗?

这是一个转发参考吗?
EN

Stack Overflow用户
提问于 2016-11-26 21:54:15
回答 3查看 3.6K关注 0票数 23

Scott Meyer在这个例子中明确了右值引用和转发引用之间的区别:

代码语言:javascript
运行
复制
Widget&& var1 = someWidget;     // here, “&&” means rvalue reference (1)

auto&& var2 = var1;             // here, “&&” does not mean rvalue reference (2)

template<typename T>
void f(std::vector<T>&& param); // here, “&&” means rvalue reference (3)

template<typename T>
void f(T&& param);              // here, “&&”does not mean rvalue reference (4)

本质上,当我们有一个deducible 时,这种区别就会发生,因此,情况(3)明确指出我们有一个vector<...>&&,而情况(4)中的T将被推导出来,并(在应用参考折叠规则之后)按照“值类别”进行分类。

以下面的例子为例:,但是更复杂的模式匹配会发生什么呢?

代码语言:javascript
运行
复制
template <template <class...> class Tuple, class... Ts>
void f(Tuple<Ts...>&& arg)
{

}

&&在这里是什么意思?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40819058

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档