MatrixXf A = MatrixXf::Random(3, 3);
MatrixXf B = A.row(1);
std::vector<float> vec;
私は、行列 "B"からの要素でベクトル "vec"を構築したいと考えています。明白な答え(手動push_back
Sまたは事前割り当て+インデックス・バイ・インデックスの割り当て)に加えて固有行列からC++ベクトルをマップ/構築する方法は?
MatrixXf A = MatrixXf::Random(3, 3);
MatrixXf B = A.row(1);
std::vector<float> vec(B.size());
for(size_t row=0; row < vec.size(); row++) {
vec[row] = B[row];
}
'B.data()'がベクトルを返すならば、 'vector :: insert'を使うことができます。一度に1つの要素を返す場合、 'vector :: push_back'を使用することができます – Nipun