'C++' size_type

토스트·2025년 4월 30일
0

'C++' basic

목록 보기
22/35

size_type

컨테이너에서 정의하는 크기 관련 타입입니다. 이는 반드시 부호 없는 정수형이어야 하며, 일반적으로 size_t와 동일하게 동작하지만, 컨테이너 클래스에서 타입을 정의할 때 사용됩니다.

  • 컨테이너의 멤버 타입으로 정의되어 있습니다.
  • 코드에서 size_type을 사용하면 컨테이너에 맞는 크기 표현을 사용할 수 있도록 컴파일러가 자동으로 적합한 타입을 선택합니다.

size_t VS size_type

공통점

  • 두 타입 모두 크기(size)를 표현하기 위한 정수 타입입니다.
  • 보통 배열의 크기, 컨테이너의 크기, 메모리의 크기 등을 나타낼 때 사용됩니다.
  • 부호 없는 정수형(unsigned int 계열)으로, 음수를 표현할 수 없습니다.

차이점

size_t : 표준 라이브러리에서 제공하는 부호 없는 정수형으로, 메모리 크기나 배열 크기 등 일반적인 크기 관련 연산에 사용됩니다.

size_type : 컨테이너 클래스에서 정의하는 타입으로, 그 컨테이너의 크기를 나타낼 때 사용됩니다. 대부분의 경우 size_type은 size_t와 동일하지만, 컨테이너마다 다를 수 있습니다.

즉, size_type은 컨테이너 타입에 의존하는 크기 관련 타입이고, size_t는 표준 C++ 타입입니다.

size_type은 더 일반화(generalized)되고, 컨테이너 특화된 타입입니다. 반면, size_t는 플랫폼에 독립적인 표준 부호 없는 정수 타입입니다.

0개의 댓글