enumって、#defeineでやるのとちがって、
「まちがって同じ数値を定義しちゃう」ことがないっていう利点がありますよね?

で、ほかに利点ってありますか?
たとえば、その型以外の変数にその値を代入したり比較したらエラーにしてくれるとか、
逆にその型で宣言した変数にそれ以外のものを代入したらエラーにしてくれるとか
そういう機能はないのですか?
あと、たとえば、型ごとに名前空間が別だとか、そういうのがあればいいのに。