SWITCH

    전문가를 위한 C++ : 1장 (2)

    1. enum과 enum class enum은 원래 타입을 엄격하게 따지지 않는다. 타입을 엄격히 따지는 것을 '스트롱 타입' 또는 '타입에 안전하다(타입 세이프하다)'고 표현한다. enum 타입은 항상 정수로 해석하기 때문에 선언한 형태에 관계없이 모든 enum 타입을 서로 비교할 수 있다. 타입을 엄격하게 적용하고 싶다면 enum class를 사용한다. enum class PieceType { King = 1, Queen,// 2 Rook = 10, Pawn// 11 }; enum class로 정의한 열거 타입 값들의 이름은 스코프(유효 범위)가 자동으로 확장되지 않는다. 다시 말해 enum class 스코프 안에서만 유효하다. 따라서 열거 타입 값을 사용할 때마다 다음과 같이 스코프 지정 연산자를 ..