[C++] enum class

Date:     Updated:

카테고리:

태그:

이 글은 C++ enum class를 공부하고 정리한 글입니다.
enum class는 정수형으로의 암시적 캐스팅이 없는 enum이다.

enum class

  • 정수형으로의 암시적 캐스팅이 없음
  • 자료형 검사도 함
  • 또한 enum에 할당할 바이트 양을 정할 수도 있음

    코드 예제

    // Main.cpp
    #include <cstdint>
    
    enum class eScoreType : uint8_t
    {
        Ten,
        Nine,
        Zero,
        Final = 0x100; // 경고 (uint8_t을 초과했다)
    };
    
    enum class eStudyType
    {
        Fulltime,
        Parttime
    };
    
    int main()
    {
        eScoreType score = eScoreType::Ten;
        eStudyType studyType = eStudyType::Fulltime;
    
        int num = eScoreType::Nine;           // ERROR
    
        if (score == eStudyType::Fulltime)    // ERROR
        {
            ...
        }
    
        return 0;
    }
    


참조

포큐아카데미 C++ 언매니지드 프로그래밍



💻 열심히 공부해서 작성 중이니 오류나 틀린 부분이 있을 경우 
  언제든지 댓글 혹은 메일로 알려주시면 감사하겠습니다! 😸

맨 위로 이동하기

Cpp 카테고리 내 다른 글 보러가기

댓글 남기기