Повышение UBLAS Matrix Reference

Мне интересно, возможно ли получить адрес отдельного элемента матрицы Boost uBLAS?

То есть

boost::numeric::ublas::matrix<char> bob(3,3);
some_function(&bob[2][2]);

Теперь, конечно, вторая строка не будет работать... но я бы этого хотел.

Какие-нибудь мысли?

Спасибо!

2 ответа

Решение

Разве не проще использовать адрес возвращаемого значения следующего оператора? И независимо от расположения матрицы?

reference operator () (size_type i, size_type j)

Например:

some_function(&bob(2,2));

По умолчанию внутренним представлением матрицы является основной массив 1D строк.

some_function(&bob.data()[i*ncol+j] должно сработать

Другие вопросы по тегам