std::vector<T,Allocator>::capacity
cppreference.net에서
size_type capacity() const;
|
(C++11부터 noexcept) (C++20부터 constexpr) |
|
벡터가 재할당 없이 보유할 수 있는 요소의 개수를 반환합니다.
반환값
현재 할당된 저장 공간의 용량.
복잡도
상수.
예제
이 코드 실행
#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'; }
가능한 출력:
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
참고 항목
|
요소의 개수를 반환합니다
(public member function) |
|
|
저장 공간을 예약합니다
(public member function) |