1 // -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 // vi: set et ts=4 sw=2 sts=2:
3
4 #ifdef HAVE_CONFIG_H
5 #include "config.h"
6 #endif
7
8 #include <array>
9 #include <iostream>
10
11 #include <dune/common/std/make_array.hh>
12 #include <dune/common/classname.hh>
13 #include <dune/common/fvector.hh>
14 #include <dune/common/streamoperators.hh>
15
16 template<class T, std::size_t n>
f(const std::array<T,n> & a)17 void f(const std::array<T, n> &a)
18 {
19 using Dune::operator<<;
20 std::cout << "Got a " << Dune::className(a) << " with elements " << a << std::endl;
21 }
22
main()23 int main() {
24 // check that make_array works
25 f(Dune::Std::make_array(1, 2));
26 f(Dune::Std::make_array(1, 2, 3));
27 f(Dune::Std::make_array(1, 2, 3, 4));
28 f(Dune::Std::make_array(1, 2, 3, 4, 5));
29 f(Dune::Std::make_array(1, 2, 3, 4, 5, 6));
30 f(Dune::Std::make_array(1, 2, 3, 4, 5, 6, 7));
31 f(Dune::Std::make_array(1, 2, 3, 4, 5, 6, 7, 8));
32 f(Dune::Std::make_array(1, 2, 3, 4, 5, 6, 7, 8, 9));
33 f(Dune::Std::make_array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));
34
35 Dune::FieldVector<double, 2> x(0);
36 f(Dune::Std::make_array(x, x));
37 }
38