Когда я вызываю std::vector::reserve
, когда идентификатор имеет тип std::vector
backup(...)
ничего не делает:
std::vector<int*> bar;
bar.reserve(20);
//I expect bar.size to return 20...
std::size_t sz = bar.size();
for(std::size_t i = 0; i < sz; ++i) {
//Do Stuff to all items!
}
Вышеупомянутый цикл for
выполняется ровно ноль раз, а bar.size() возвращает ноль. Я не помню, справедливо ли это для всех других контейнеров STL, но если да, то включая поведение для std::vector:ПОЧЕМУ?