Necesito ayuda para usar la matriz multidimensional de impulso. Tengo que construir una matriz de dos dimensiones, donde: (0 < = j < = 1) y (i) crece dinámicamente de acuerdo con:¿Cómo se usa (la Biblioteca de matrices multidimensionales Boost) para construir una matriz bidimensional dinámica?
long boostArray[i][j];
lo tanto, es como construir una tabla de columnas (desconocidos) y dos filas .
que ya se inició con el ejemplo proporcionado en el sitio web de Boost Biblioteca:
#include "boost/multi_array.hpp"
#include <cassert>
int main() {
// 3 x 4 x 2
typedef boost::multi_array<double, 3> array_type;
typedef array_type::index index;
array_type A(boost::extents[3][4][2]);
int values = 0;
for(index i = 0; i != 3; ++i)
for(index j = 0; j != 4; ++j)
for(index k = 0; k != 2; ++k)
A[i][j][k] = values++;
int verify = 0;
for(index i = 0; i != 3; ++i)
for(index j = 0; j != 4; ++j)
for(index k = 0; k != 2; ++k)
assert(A[i][j][k] == verify++);
return 0;
}
El problema es que yo no entendía bien el código anterior con el fin de modificar en su estructura y construir mi matriz deseada No sé exactamente cómo agregar/eliminar elementos a/desde mi matriz mientras uso la Biblioteca Boost, especialmente si esta matriz crece dinámicamente como describí anteriormente.
Por ejemplo, cuando se trata de vectores, que tienden a utilizar: push_back y pop_back después de cambiar el tamaño del vector.