Syntax:
#include <algorithm> output_iterator copy( input_iterator start, input_iterator end, output_iterator dest );
The copy function copies the elements between start and end to dest. In other
words, after copy has run,
*dest = *start *(dest+1) = *(start+1) *(dest+2) = *(start+2) ... *(dest+N) = *(start+N)
The return value is the position in the destination range after the last element copied (i.e. dest+N+1).
copy runs in linear time.
For example, the following code uses copy to both copy the contents of one vector
to another and to display the resulting vector:
vector<int> from_vector; for( int i = 0; i < 10; i++ ) { from_vector.push_back( i ); } vector<int> to_vector(10); copy( from_vector.begin(), from_vector.end(), to_vector.begin() ); cout << "to_vector contains: "; copy( to_vector.begin(), to_vector.end(), ostream_iterator<int>( cout, " " ) ); cout << endl;
Related Topics: copy_backward, copy_n, generate, remove_copy, swap, transform