enum E { a, b, c };でE::aとアクセスできないのはなんでなんだろ
別の名前空間でtypedef E E_t; したらE_t::aとできてすごく使えると思うんだけど
もちろんC言語と互換性ないのはわかるけど・・・