1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
template< typename T, std::size_t ROWS, std::size_t COLS >
void do_try( array2<T,ROWS,COLS>& a, std::size_t r, std::size_t c, const T& v )
{
std::cout << "row: " << r << ", col: " << c << " => " ;
try { a[r][c] = v ; std::cout << "ok: " << a[r][c] << '\n' ; }
catch( const std::exception& e ) { std::cerr << "error: " << e.what() << '\n' ; }
}
int main()
{
array2<int,5,6> a ;
do_try( a, 7, 0, 99 ) ;
do_try( a, 3, 9, 99 ) ;
do_try( a, 3, 2, 99 ) ;
array2<int,5,6>::row<> slice[] = { a[2], a[3] } ;
slice[1][1] = 77 ;
for( int& v : a[3] ) v += 106 ;
for( int v : a[3] ) std::cout << v << ' ' ;
}
|