Два метода, которые могут вас заинтересовать:
Пример фрагмента
std::vector<int> v;
for (int i =0; i < 25; ++i)
v.push_back (i);
v.reserve (100);
std::cerr << "Elements: " << v.size () << std::endl;
std::cerr << "Capacity: " << v.capacity () << std::endl;
выход
Elements: 25
Capacity: 100
Я предполагаю, что ваш пример фрагмента в исходном сообщении содержит хотя бы одну опечатку, вы не объявляете std::vector<int>
с N
элементами, написав ниже.
То, что вы написали, это то, что данные представляют собой массив размером vector<int>
N
, и он будет компилироваться, если N было известно во время компиляции (или если в вашем компиляторе присутствовало расширение массива переменной длины).
vector<int> data[N];
Чтобы создать vector
и заставить его вставлять N
элементы с самого начала:
std::vector<int> data (N);