函数原型 //copy template<class InIt, class OutIt> OutIt copy(InIt first, InIt last, OutIt x); //copy_backward template<class BidIt1, class BidIt2> BidIt2 copy_backwad(BidIt1 first, BidIt1 last, Bidit2 x); copy, copy_backward的简单示例 #include <iostream> #include <vector> #include <iterator> #include <cstdlib> using namespace std; int main(int argc, char argv[]) { int a[5] = {1, 2, 3, 4, 5}; int b[5]; int c[5]; vector<int> v; copy(a, a+5, b); copy(a, a+5, back_inserter(v)); copy_backward(a, a+5, c+5); cout << "原始数组为: "; copy(a, a+5, ostream_iterator<int>(cout, " ")); cout << endl; cout << "b数组为: "; copy(b, b+5, ostream_iterator<int>(cout, " ")); cout << endl; cout << "vector 向量为: "; copy(v.begin(), v.end(), ostream_iterator<int>(cout, " ")); cout << endl; cout << "c数组为:"; copy(c, c+5, ostream_iterator<int>(cout, " ")); cout << endl; system("pause"); return 0; }