123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- // Copyright 2002 The Trustees of Indiana University.
- // Use, modification and distribution is subject to 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)
- // Boost.MultiArray Library
- // Authors: Ronald Garcia
- // Jeremy Siek
- // Andrew Lumsdaine
- // See http://www.boost.org/libs/multi_array for documentation.
- // foreach_test.cpp
- // Let's see if this stuff works
- #include "boost/multi_array.hpp"
- #include "for_each.hpp"
- #include <algorithm>
- struct times_five {
- double operator()(const int& val) { return val*5.0; }
- };
- int main() {
- typedef boost::multi_array<double,2> array;
- double data[] = {
- 1.0, 2.0, 3.0,
- 4.0, 5.0, 6.0,
- 7.0, 8.0, 9.0
- };
- const int data_size=9;
- array A(boost::extents[3][3]);
- A.assign(data,data+data_size);
- #if 0
- std::copy(A.data(),A.data()+A.num_elements(),
- std::ostream_iterator<double>(std::cout,","));
- std::cout << "\n";
- #endif
- for_each(A,times_five());
- #if 0
- std::copy(A.data(),A.data()+A.num_elements(),
- std::ostream_iterator<double>(std::cout,","));
-
- std::cout << "\n";
- #endif
- return 0;
- }
|