尝试使用for循环在vec或rowvec中添加元素,但是每次循环添加元素时,矩阵每次都会重置吗?
Noad in Armadillo,我看了文档,但我什至找不到单个示例示例将它们用于循环。谢谢你的帮助。
arma::vec A;
for (int i = 0; i < 10; i++) {
A << i;
}
cout << A;
预期输出:0.0 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0
实际输出:9.0
最佳答案
有几种方法可以做到这一点。第一种方法是简单地预先声明 vector 的大小,并单独声明set:
arma::vec A(10);
for (arma::uword i = 0; i < 10; ++i) {
A(i) = i;
}
如果您不知道事先需要多少个元素,请按照答案中详述的其他方法进行操作:push_back/append or appending a vector with a loop in C++ Armadillo