std::vector<T,Allocator>::capacity
From cppreference.com
size_type capacity()const; | (noexcept since C++11) (constexpr since C++20) | |
Returns the number of elements that the container has currently allocated space for.
Contents |
[edit]Parameters
(none)
[edit]Return value
Capacity of the currently allocated storage.
[edit]Complexity
Constant.
[edit]Example
Run this code
#include <iomanip>#include <iostream>#include <vector> int main(){int sz =100;std::vector<int> v; auto cap = v.capacity();std::cout<<"Initial size: "<< v.size()<<", capacity: "<< cap <<'\n'; std::cout<<"\nDemonstrate the capacity's growth policy.""\nSize: Capacity: Ratio:\n"<<std::left;while(sz-->0){ v.push_back(sz);if(cap != v.capacity()){std::cout<<std::setw(7)<< v.size()<<std::setw(11)<< v.capacity()<<std::setw(10)<< v.capacity()/static_cast<float>(cap)<<'\n'; cap = v.capacity();}} std::cout<<"\nFinal size: "<< v.size()<<", capacity: "<< v.capacity()<<'\n';}
Possible output:
Initial size: 0, capacity: 0 Demonstrate the capacity's growth policy. Size: Capacity: Ratio: 1 1 inf 2 2 2 3 4 2 5 8 2 9 16 2 17 32 2 33 64 2 65 128 2 Final size: 100, capacity: 128
[edit]See also
returns the number of elements (public member function) | |
reserves storage (public member function) |