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


C++ copy_backward()用法及代碼示例


C++ 算法 copy_backward() 函數用於按倒序複製元素,它接受三個參數,然後複製屬於範圍[first,last] 的元素。元素的複製以相反的順序開始,終止點位於 'result'。

用法

template<class BidirectionalIterator1, class BidirectionalIterator2>
BidirectionalIterator2 copy_backward(BidirectionalIterator1 first, BidirectionalIterator1 last, BidirectionalIterator2 result);

參數

first:它是到範圍的第一個元素的雙向迭代器,其中元素本身包含在範圍內。

last: 它是到範圍最後一個元素的雙向迭代器,其中元素本身不包含在範圍內。

result:它是到複製元素最終位置的雙向迭代器。

返回值

該函數將第一個元素的迭代器返回到複製的序列。

例子1

#include <iostream>     
#include <algorithm>    
#include <vector>       
int main () 
{ std::vector<int> newvector;
  for (int k=1; k<=5; k++)
  newvector.push_back(k*5);          
  newvector.resize(newvector.size()+3);  
  std::copy_backward ( newvector.begin(), newvector.begin()+5, newvector.end() );
  std::cout << "newvector contains:";
  for (std::vector<int>::iterator ti=newvector.begin(); ti!=newvector.end(); ++ti)
  std::cout << ' ' << *ti;
  std::cout << '\n';
  return 0;
}

輸出:

newvector contains:5 10 15 5 10 15 20 25

複雜度

函數的複雜度從第一個元素到最後一個元素是線性的。

數據競爭

訪問部分或全部容器對象。

異常

如果任何容器元素拋出一個異常,該函數就會拋出異常。






相關用法


注:本文由純淨天空篩選整理自 C++ Algorithm Functions copy_backward()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。