标签:
具体参考:http://m.blog.csdn.net/blog/coolmeme/44563577
void f(Widget&& param); // 右值引用
Widget&& var1 = Widget(); // 右值引用
template<typename T>
void f(std::vector<T>&& param); // 右值引用
template<typename T>
void f(T&& param); // 统一引用
auto&& var2 = var1; // 统一引用
1.假如一个函数模板的参数有一个T&&类型用来推导,或者对象使用auto&&来声明,这个参数或对象是一个统一引用。
2.假如类型声明的形式不是精确的type&&,或者没有发生类型推导,type&&表示了一个右值引用。
3.假如统一引用被右值来初始化,则它们关联到右值。如果被左值来初始化,则它们关联到左值。
标签:
原文地址:http://www.cnblogs.com/wxquare/p/4740530.html