Я пытаюсь отойти от типов std::vector и использовать вместо них boost::multi_array. Однако я не могу инициализировать такие элементы данных.
Раньше у меня был такой класс:
Затем, во время выполнения, на основе значений пользовательских входных данных ui1 и ui2, я бы сделал следующее, чтобы создать хранилище для данных.
Код: Выделить всё
std::vector temp(ui2);
for(int i = 0; i < ui1; i++)
data.push_back(temp);
Как я могу сделать что-то подобное с помощью boost::multi_array ? Кажется, что все примеры в официальной документации имеют константы времени компиляции, определяющие размеры.
https://www.boost.org/doc/libs/1_69_0/l ... /user.html
Мне, однако, нужно сначала объявить пустой контейнер, прочитать пользовательские данные и только потом соответствующим образом заполнить контейнер.
Подробнее здесь:
https://stackoverflow.com/questions/798 ... t-run-time