C++ 算法 copy_backward()函数

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

复杂度

该函数的复杂度是从第一个元素到最后一个元素呈线性增长。

数据竞争

一些或所有容器对象被访问。

异常

如果容器中的任何元素抛出异常,该函数会抛出一个异常。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程