Я предварительно выделяю некоторую память моей переменной-члену vector
. Ниже кода минимальная часть
class A {
vector<string> t_Names;
public:
A () : t_Names(1000) {}
};
Теперь в некоторый момент времени, если t_Names.size()
равно 1000
. Я намерен увеличить размер на 100
. Затем, если он достигнет 1100
, снова увеличьте на 100
и т.д.
Мой вопрос в том, что выбрать между vector::resize()
и vector::reserve()
. Есть ли лучший выбор в этом сценарии?
Изменить. У меня есть точная оценка для t_Names
. Я полагаю, что он будет 700
до 800
. Однако в определенных (редко) ситуациях он может вырасти больше, чем 1000
.