resize()改变了容器的大小。
void resize (size_type n);
void resize (size_type n, const value_type& val);
resize之后容器含有n个元素,创建了新对象,第二个参数是要添加的新元素。用operator[]操作符,或者用迭代器来引用元素对象。
reserve()改变了容器的预留控件,没有创建新对象。
void reserve (size_type n);
reserve之后还不能马上引用容器中的对象,需要使用insert()或者push_back()创建新的对象。
本文深入解析了resize()和reserve()两个容器操作的区别。resize()用于改变容器大小并填充指定元素,而reserve()仅预分配内存,不改变容器大小。通过对比,读者可以清晰理解两者的应用场景。
1353

被折叠的 条评论
为什么被折叠?



