순환 값을 사용하여 열거 형을 구현하고 값에서 변환하는 적절한 함수를 구현하는 가장 좋은 방법은 무엇입니까? 예를 들어순환 열거 형 값의 구현
는 :
enum class Direction {
NORTH, EAST, SOUTH, WEST
};
constexpr Direction left(Direction d) {
return (Direction)((std::underlying_type<Directions>::type(d) - 1) % 4);
}
그러나,이 오류가 발생하기 쉽고 일반적으로 읽을 생각합니다. 이 유형의 열거를 처리하는 더 적절한 방법이 있습니까?
4 ~ 명시 적으로 그것을 밖으로 철자를 case switch 문? 그것은 가장 가독성이 높은 옵션입니다. – RichieHindle
LOTS 값이 더 많으면 어떻게 될까요? – Svalorzen
'left'를'nextCounterclockwise' (또는 간단히'nextCCW')로 변경하면 더 쉽게 읽을 수 있습니다 :-D – deepmax