Files
array/test/array2.cpp
T

45 lines
1.0 KiB
C++
Raw Permalink Normal View History

2000-08-02 18:15:32 +00:00
/* example for using class array<>
2003-02-04 07:21:29 +00:00
* (C) Copyright Nicolai M. Josuttis 2001.
2004-09-09 13:59:01 +00:00
* Distributed under the Boost Software License, Version 1.0. (See
* accompanying file LICENSE_1_0.txt or copy at
* http://www.boost.org/LICENSE_1_0.txt)
2000-08-02 18:15:32 +00:00
*/
2003-02-04 07:21:29 +00:00
2010-02-03 12:10:56 +00:00
#ifndef _SCL_SECURE_NO_WARNINGS
// Suppress warnings from the std lib:
# define _SCL_SECURE_NO_WARNINGS
#endif
2000-08-02 18:15:32 +00:00
#include <algorithm>
#include <functional>
#include <boost/array.hpp>
#include "print.hpp"
using namespace std;
int main()
{
// create and initialize array
boost::array<int,10> a = { { 1, 2, 3, 4, 5 } };
2000-08-02 18:15:32 +00:00
2001-08-23 20:33:35 +00:00
print_elements(a);
2000-08-02 18:15:32 +00:00
// modify elements directly
for (unsigned i=0; i<a.size(); ++i) {
++a[i];
}
2001-08-23 20:33:35 +00:00
print_elements(a);
2000-08-02 18:15:32 +00:00
// change order using an STL algorithm
reverse(a.begin(),a.end());
2001-08-23 20:33:35 +00:00
print_elements(a);
2000-08-02 18:15:32 +00:00
// negate elements using STL framework
transform(a.begin(),a.end(), // source
a.begin(), // destination
negate<int>()); // operation
2001-08-23 20:33:35 +00:00
print_elements(a);
return 0; // makes Visual-C++ compiler happy
2000-08-02 18:15:32 +00:00
}