std::vector ctor sets size + zeroes contents...
От: Аноним  
Дата: 04.07.08 11:52
Оценка: :)
Блин, злой. Почему-то все время считал, (кажется, вычитав в одной книге!)
что:
    std::vector<char>  vec(1024);


Сделает только RESERVE памяти вектора. Т.е. всего лишь задаст его capacity.
Всегда после этого зазря звал еще и resize(xyz).

Сегодня взял после этого конструктора .size() и... узнал, что такая форма конструктора реально аллоцирует (выделяет)
элементы вектора. Более того, вектор _всегда_ принудительно обнуляется, о чем я тоже не знал. Его обнуление, AFAIK нигде не прописано.

Ткните носом, где я и что не дочитал.
stl std containers vector
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.