@DanS: в этом случае std :: array может быть не для вас. Смотрите мне обновить ответ (через несколько секунд).
ли способ зафиксировать размер вектора и при этом изменить содержимое?
Я попытался сделать константный векторconst std::vector<int> vec(10);
но это мешает мне изменить ценности.
vec[3] = 3;
выдает ошибку компилятора: назначение места только для чтения.
Я также пытался с константной ссылкой на неконстантный вектор
std::vector<int> vec(10);
const std::vector<int>& vecref(vec);
что дает ту же ошибку компилятора.
Я хочу иметь возможность исправить размер вектора либо при объявлении, либо после этапа инициализации. Я мог бы использовать старомодный массив, но я хочу иметь возможность использовать векторные алгоритмы.
Я использую g ++, если это имеет значение.