cout<<v.size()<<endl<<v.capacity()<<endl;//此时容器内有一个元素了,那么size()和capacity()都是1 v.push_back(1); cout<<v.size()<<endl<<v.capacity()<<endl;//此时容器内能够提供的空间capacity()不够用了,需要申请内容,申请多少呢,申请后的大小应该是以前的2倍,那就应该是2了,此时有两个...
所以用reserve(size_type)只是扩大capacity值,这些内存空间可能还是“野”的,如果此时使用“[ ]”来访问,则可能会越界。而resize(size_type new_size)会真正使容器具有new_size个对象。 在对vector进行访问时,如果使用“[ ]”,则会像变通数组那样,不进行越界的判断。如果使用“at(size_type)”函数则会先进行越界...
capacity() //当前vector分配的大小 size() //当前使用数据的大小 capacity(); //返回a在内存中总共可以容纳的元素个数 a.reserve(100); //改变当前vecotr所分配空间的大小将a的容量(capacity)扩充至100,也就是说现在测试a.capacity();的时候返回值是100 a.resize(10); //将a的现有元素个数调至10个,多...
std::cout << "Capacity: " << myVector.capacity() << std::endl; return 0; } 3. `size` 函数: - 作用: 返回容器中元素的数量。 - 语法: `size_type size() const noexcept;` #include <vector> #include <iostream> int main() { std::vector<int> myVector = {1, 2, 3, 4, 5};...
🌠Capacity容量操作 🌉 size() 🌉 capacity() 🌉resize() 🌉reserve() 🌠 常用操作符 🌉 push_back 🌉pop_back 🌉 find 🌉 insert 🌉 erase 🚩总结 📝前言 本节我们将学习vector容器的使用和操作,让我们学习起来吧! 库函数网址查询:https://legacy.cplusplus.com/reference/vector/vector...
vector提供了两个成员函数:capacity和reserve,使程序员可与vector容器内存分配的实现部分交互工作。capacity操作获取容器能够存储的元素总数,而reserve操作则告诉vector容器应该预留多少个元素的存储空间。 弄清楚容器的capacity(容量)和size(长度)的区别非常重要,size指容器当前拥有的元素个数,而capacity则指容器在必须分配新...
简单而言,size()指的是当前Vector中存放元素的大小,即他当前存放了多少个元素,capacity()指的是他能够存放多少个元素。 两个方法可以控制存放元素的大小和最大容纳数量 reserve可以保证容纳的大小 resize()可以设置当前存放元素的大小,但是不会改变前面已存放元素的值,这点...
Capacity Capacity中的几个函数,从描述上看有点模糊,下面我们具体解释一下。 size返回的是当前vector中有多少元素; max_size返回的是最大可用的数据量,这跟实际的硬件有关,但也并不是所有的内存空间都可用,比如下面程序中的运行的内存大小为32GByte,但返回的结果是4GByte; ...
vector中的size和capacity 在vector中与size()和capacity() 相对应的有两个函数:resize(size_type)和reserve(size_type)。l Size指目前容器中实际有多少元素,对应的resize(size_type)会在容器尾添加或删除一些元素,来调整容器中实际的内容,使容器达到指定的大小。l Capacity指最少要多少元素才会使其容量重新...
函数说明 push_back(const T& val) 在末尾添加元素 pop_back() 删除末尾元素 at(size_t pos) 返回指定位置的元素,带边界检查 operator[] 返回指定位置的元素,不带边界检查 front() 返回第一个元素 back() 返回最后一个元素 data() 返回指向底层数组的指针 size() 返回当前元素数量 capacity() 返回当前分配...