>>606

| を使って欲しくないときの話。
C++ではenum値に対する | の結果は単なる整数だったから、enum変数に再代入することが出来なかったけれど、C#では | の結果が元の型と同じだから605のような問題が発生する。

606のプログラムで
void Func( Fruit );
なメソッドを作ったときどうするわけ?
せっかくFruitに列挙された値のいずれかであることを期待して引数をFruitにしたのに、そこに無関係の値が入り込んでくる。
enumの意味が無いのでは?