Dairesel değerler ile bir numaralandırma ve bir değerden diğerine geçiş için uygun işlevlerin uygulanmasının en iyi yolu ne olurdu? ÖrneğinDairesel enum değerlerinin uygulanması
:
enum class Direction {
NORTH, EAST, SOUTH, WEST
};
constexpr Direction left(Direction d) {
return (Direction)((std::underlying_type<Directions>::type(d) - 1) % 4);
}
Ancak, bu hata eğilimli ve genellikle okunmaz olduğunu düşünüyoruz. Bu tür sayılar ile başa çıkmak için daha uygun bir yolu var mı?
bir dört-ile açıkça heceleyin durum açıklaması? Bu en okunabilir seçenek olurdu. – RichieHindle
Eğer LOTS daha fazla değer varsa? – Svalorzen
Eğer 'left' - nextCounterclockwise '(ya da belki 'nextCCW' kısa) değiştirirseniz benim için daha okunaklı: -D – deepmax