The member function capacity() returns the total number of elements that a vector can hold without requiring reallocation:
#include #include using namespace std;void main() { vector vi; vi.reserve(10); //make room for at least 10 more int's cout<< vi.size(); //output 0; no elements are stored in vi cout<< vi.capacity(); //output 10; vi has enough room for 10 elements}
You can use capacity() before inserting new elements to check whether existing iterators may become invalidated as a result.