简单的程序诠释C++ STL算法系列之copy


现在我们来看看变易算法。所谓变易算法(Mutating algorithms)就是一组能够修改容器元素数据的模板函数,可进行序列数据的复制,变换等。

我们现在来看看第一个变易算法:元素复制算法copy。该算法主要用于容器之间元素的拷贝,即将迭代器区间[first,last)的元素复制到由复制目标result给定的区间[result,result+(last-first))中。下面我们来看看它的函数原型:

函数原形:

template<class InputIterator, class OutputIterator>
  OutputIterator copy(
      InputIterator _First,
      InputIterator _Last,
      OutputIterator _DestBeg
  );

参数

_First, _Last

指出被复制的元素的区间范围[ _First,_Last).

_DestBeg

指出复制到的目标区间起始位置

返回值

返回一个迭代器,指出已被复制元素区间的最后一个位置

程序示例:

首先我们来一个简单的示例,定义一个简单的整形数组myints,将其所有元素复制到容器myvector中,并将数组向左移动一位。

/*******************************************************************
 * Copyright (C) Jerry Jiang
 *             
 * File Name  : copy01.cpp
 * Author      : Jerry Jiang
 * Create Time : 2012-3-20 22:44:28
 * Mail        : jbiaojerry@gmail.com
 * Blog        : 

相关内容