Ne.app NeANT
The Ne.app NeANT User module of the NeANT distribution.
copyex.cpp
Go to the documentation of this file.
1
29#include <algorithm> // for copy
30#include <iostream> // for cout, endl
31#include <iterator> // for ostream_iterator
32#include <vector> // for vector
33
34#include <examples.h>
35
36
37int main ()
38{
39 // Typedef for convenience.
40 typedef std::vector<short, std::allocator<short> > Vector;
41
42 const Vector::value_type d1[] = { 1, 2, 3, 4 };
43 const Vector::value_type d2[] = { 5, 6, 7, 8 };
44
45 // Set up three vectors.
46 Vector v1 (d1 + 0, d1 + 4),
47 v2 (d2 + 0, d2 + 4),
48 v3 (d2 + 0, d2 + 4);
49
50 // Set up one empty vector.
51 Vector v4;
52
53 // Copy v1 to v2.
54 std::copy (v1.begin (), v1.end (), v2.begin ());
55
56 // Copy backwards v1 to v3.
57 std::copy_backward (v1.begin (), v1.end (), v3.end ());
58
59 // Use insert iterator to copy into empty vector.
60 std::copy (v1.begin (), v1.end (), std::back_inserter (v4));
61
62 // Copy all four vectors to cout.
63 std:: ostream_iterator<Vector::value_type,
64 char,
65 std::char_traits<char> >
66 out (std::cout, " ");
67
68 std::copy (v1.begin (), v1.end (), out);
69 std::cout << std::endl;
70
71 std::copy (v2.begin (), v2.end (), out);
72 std::cout << std::endl;
73
74 std::copy (v3.begin (), v3.end (), out);
75 std::cout << std::endl;
76
77 std::copy (v4.begin (), v4.end (), out);
78 std::cout << std::endl;
79
80 return 0;
81}
#define d1
Definition 17.names.cpp:228
#define v2
Definition 17.names.cpp:271
#define d2
Definition 17.names.cpp:254
#define v1
Definition 17.names.cpp:245
std::vector< UserClass, std::allocator< UserClass > > Vector
const int out
int main()
Definition copyex.cpp:37