Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int M[5][5] = { {1,3,4,2,5},
- {3,5,1,6,2},
- {7,5,6,2,0},
- {6,2,9,7,6},
- {1,0,8,5,2} };
- int * m2[5];
- for(int i=0; i<5; ++i)
- m2[i]=M[i];
- f(m2);
- template<unsigned...>struct indexes {};
- template<unsigned Max, unsigned...Is>struct make_indexes:make_indexes<Max-1,Max-1,Is...>{};
- template<unsigned...Is>struct make_indexes<0,Is...>:indexes<Is...>{};
- template< class T, std::size_t X, std::size_t Y, unsigned...Is >
- std::array<T*, X> as_jagged_helper( T(&arr)[X][Y], indexes<Is...> ) {
- return {arr[Is]...};
- }
- template< class T, std::size_t X, std::size_t Y, unsigned...Is >
- std::array<T*, X> as_jagged( T(&arr)[X][Y] ) {
- return as_jagged_helper(arr, make_indexes<X>());
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement