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


C++ std::reverse_copy用法及代碼示例


C++ STL提供了一個函數,該函數可以複製給定範圍內的元素,但順序相反。下麵是一個簡單的程序,顯示reverse_copy()的工作。

例子:

Input:1 2 3 4 5 6 7 8 9 10
Output:The vector is:
10 9 8 7 6 5 4 3 2 1

該函數具有三個參數。前兩個是要複製元素的範圍,第三個參數是要以相反順序複製元素的起點。


// C++ program to copy from array to vector 
// using reverse_copy() in STL. 
#include <bits/stdc++.h> 
using namespace std; 
  
int main() 
{ 
    int src[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; 
    int n = sizeof(src) / sizeof(src[0]); 
  
    vector<int> dest(n); 
  
    reverse_copy(src, src + n, dest.begin()); 
  
    cout << "The vector is:\n"; 
    for (int x:dest) { 
        cout << x << " "; 
    } 
  
    return 0; 
}
輸出:
The vector is:
10 9 8 7 6 5 4 3 2 1

以下是矢量到矢量複製的示例。

// C++ program to copy from array to vector 
// using reverse_copy() in STL. 
#include <bits/stdc++.h> 
using namespace std; 
  
int main() 
{ 
    vector<int> src { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; 
  
    vector<int> dest(src.size()); 
  
    reverse_copy(src.begin(), src.end(), dest.begin()); 
  
    cout << "The vector is:\n"; 
    for (int x:dest) { 
        cout << x << " "; 
    } 
  
    return 0; 
}
輸出:
The vector is:
10 9 8 7 6 5 4 3 2 1


相關用法


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