當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ reference_wrapper用法及代碼示例


std::reference_wrapper是一個類模板,它將引用包裝在可複製構造和複製可分配對象中或對類型 T 的函數的引用。
實例std::reference_wrapper是對象(它們可以複製或存儲在容器中),但它們可以隱式轉換為‘T&’以便它們可以用作通過引用獲取基礎類型的函數的參數。

用法:

template <class T> class reference_wrapper;
template parameter(T): type of the referred element and
                        this can be  either function or object.

例子:


// C++ program to demonstrate the 
// use of std::reference_wrapper 
#include <iostream>     
#include <functional>  
using namespace std; 
  
int main ()  
{ 
    char a = 'g', b = 'e', c  = 'e', d = 'k', e = 's'; 
      
    // creating an array of character "references": 
    reference_wrapper<char> ref[] = {a, b, c, d, e}; 
      
    for (char& s : ref) 
          cout << s; 
      
    return 0; 
} 

輸出:

geeks

相關用法


注:本文由純淨天空篩選整理自rajasethupathi大神的英文原創作品 reference_wrapper in C++。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。