你如何得到一个boost :: numeric :: ublas :: matrix <t>的行的迭代器?</t>

时间:2012-03-25 15:17:02

标签: c++ boost ublas

我正在研究矩阵乘法,我想在一行增强矩阵上使用迭代器?可以这样做吗?

目前,我必须得到一个迭代器并推进它。看起来CPU工作量太大/未经优化......

boost::numeric::ublas::matrix<T> aMatrix(2048, 4096);
typename boost::numeric::ublas::unbounded_array<T>::iterator it;
it = aMatrix.data().begin();
offset = row * aMatrix.size2();
advance(it, offset);

1 个答案:

答案 0 :(得分:4)

尤里卡! Matrix proxies ...

boost::numeric::ublas::matrix_row<boost::numeric::ublas::matrix<T> > aRow(aMatrix, row);