我正在编写一个c ++程序,它使用boost库进行矩阵运算。我需要动态扩展初始矩阵的大小。
实施例: 如果我的矩阵大小是:
matrix<float> m(3,3);
后来我的矩阵将扩展,我将需要一个4 * 4矩阵。我能想到的天真的方法是分配一个大小为4,4的新矩阵,并将3 * 3矩阵的所有元素复制到它。难道没有更好的方法来提升吗?
答案 0 :(得分:1)
为什么不使用no arg构造函数创建矩阵并根据需要调用resize方法?
http://www.boost.org/doc/libs/1_47_0/libs/numeric/ublas/doc/matrix.htm
答案 1 :(得分:1)
使用resize()
:“指定时,矩阵的现有元素已预先设置( sic )。”