C++ 类中的 reference_wrapper


C++ 中的 reference_wrapper 是一个类模板,通过封装一个引用到类型为 T 的可复制和可赋值对象的引用来提供帮助。std::reference_wrapper 的实例基本上是对象,但它们可以转换成 T&。所以我们可以将它们作为参数用于需要引用类型作为参数的函数。

例子代码

#include <iostream>
#include <functional>
using namespace std;
int main () {
   char a = 'h', b = 'e', c = 'l', d = 'l', e = 'o' , f = 'W', g = 'o', h = 'r', i = 'l', j = 'd';
   reference_wrapper<char> ref[] = {a, b, c, d, e, f, g, h, i, j}; //creating reference array
   for (char& s : ref)
      cout << s;
   cout <<endl;
   return 0;
}

输出

soumyadeep@soumyadeep-VirtualBox:~$ ./a.out
helloWorld
soumyadeep@soumyadeep-VirtualBox:~$

更新于: 30-07-2019

296 浏览

启动你的 职业生涯

通过完成该课程获得认证

开始吧
广告
© . All rights reserved.