array::max_size
array::max_size (담을 수 있는 최대 원소 수 얻기)
컨테이너가 담을 수 있는 최대 원소 수를 반환하는 멤버 함수예요. 상수 시간에 동작해요. C++11부터 있어요.
출처: cppreference
본문
max_size()는 컨테이너가 담을 수 있는 최대 원소 수를 돌려줘요.
constexpr size_type max_size() const noexcept;
반환 값은 최대 원소 수, 즉 N이에요. 복잡도는 상수 시간이에요.
std::array<T, N>은 고정 크기 컨테이너라서 max_size()가 반환하는 값이 곧 N이고, 이는 size()가 반환하는 값과도 같아요. 즉 최대치와 현재 크기가 늘 일치하는 컨테이너죠.
std::array<char, 10> p;
std::cout << p.max_size(); // 10
std::vector 같은 가변 컨테이너에서는 max_size()가 "이 타입으로 최대한 키울 수 있는 이론상 상한"이라 실제와 다르지만, std::array에서는 템플릿 인자 N이 그대로 나오니 직관적이에요. 고정 크기가 보장된다는 점을 확인할 때 활용할 수 있어요.