41 typedef std::vector<long, std::allocator<long> >
Vector;
43 typedef std::ostream_iterator <Vector::value_type,
45 std::char_traits<char> > os_iter;
48 const Vector::value_type arr [] = {
49 1, 1, 2, 3, 5, 8, 13, 21, 34, 55
52 Vector v (arr + 0, arr +
sizeof arr /
sizeof *arr);
59 std::adjacent_difference (
v.begin (),
v.end (), diffs.begin ());
62 std::adjacent_difference (
v.begin (),
v.end (), prods.begin (),
63 std::multiplies<Vector::value_type> ());
66 os_iter osit (std::cout,
" ");
69 std::cout <<
"For the vector: " << std::endl <<
" ";
70 std::copy (
v.begin (),
v.end (), osit);
72 std::cout << std::endl << std::endl;
74 std::cout <<
"The differences between adjacent elements are: "
77 std::copy (diffs.begin (), diffs.end (), osit);
78 std::cout << std::endl << std::endl;
80 std::cout <<
"The products of adjacent elements are: "
83 std::copy (prods.begin (), prods.end (), osit);
84 std::cout << std::endl;
std::vector< UserClass, std::allocator< UserClass > > Vector