C++ copy()函数

来源:互联网 发布:淘宝客好做吗 编辑:程序博客网 时间:2024/06/16 03:16

function template
<algorithm>

std::copy

template <class InputIterator, class OutputIterator>  OutputIterator copy (InputIterator first, InputIterator last, OutputIterator result);
Copy range of elements
Copies the elements in the range [first,last) into the range beginning at result.

The function returns an iterator to the end of the destination range (which points to the element following the last element copied).

The ranges shall not overlap in such a way that result points to an element in the range [first,last). For such cases, see copy_backward.

The behavior of this function template is equivalent to:
123456789
template<class InputIterator, class OutputIterator>  OutputIterator copy (InputIterator first, InputIterator last, OutputIterator result){  while (first!=last) {    *result = *first;    ++result; ++first;  }  return result;}

示例:

// copy algorithm example#include <iostream>     // std::cout#include <algorithm>    // std::copy#include <vector>       // std::vectorint main () {  int myints[]={10,20,30,40,50,60,70};  std::vector<int> myvector (7);  std::copy ( myints, myints+7, myvector.begin() );  std::cout << "myvector contains:";  for (std::vector<int>::iterator it = myvector.begin(); it!=myvector.end(); ++it)    std::cout << ' ' << *it;  std::cout << '\n';  return 0;}
 


Output:

myvector contains: 10 20 30 40 50 60 70




原创粉丝点击