STL コンテナー (std::vector など) を使用して、メモリ内で連続する Matrix 変数 (順序付けられた列ベクトルの束) を取得する方法を探しています。1 つのオプションは次のとおりです。
vector< vector<float> > mat;
mat.push_back (column1); // column1 is of type vector<float>
mat.push_back (column2); // column2 is of type vector<float>
&mat[1][0]
これは、と等しくないという意味で連続していません。&mat[0][N-1] + 1
ここで、N
は の長さですcolumn1
。
別のオプションはこれです:
vector< float > mat;
float f1[] = {1., 2., 3.};
float f2[] = {4., 5., 6.};
mat.insert (mat.end (), f1, f1 + 3);
mat.insert (mat.end (), f2, f2 + 3);
これはメモリ内で連続していますが、浮動小数点数の配列を使用する必要があります。
編集
明確にするために、私は のようなオプションを好むvector < vector<float> >
ので、STL ベクトルとして特定の列にアクセスできます。