Это очень просто:
vec.resize(num);
или инициализируйте его с требуемым размером:
std::vector<Vector> vec(num);
И конструктор, и resize
заполнят новые элементы объектами, инициализированными значением.Инициализированный по значению объект типа без конструктора по умолчанию (например, ваш Vector
) будет иметь все числовые элементы, инициализированные на ноль.
Чтобы сбросить все на ноль, либо
size_t size = vec.size();
vec.clear();
vec.resize(size);
или:
std::fill(vec.begin(), vec.end(), Vector());
или, менее эффективно, но с сильной гарантией исключения:
std::vector<Vector>(vec.size()).swap(vec);