C 风格用法

enum 也可以像 C 语言枚举那样使用。

  1. // 隐藏未使用代码警告的属性。
  2. #![allow(dead_code)]
  3. // 拥有隐式辨别值(implicit discriminator)的 enum(从0开始计数)
  4. enum Number {
  5. Zero,
  6. One,
  7. Two,
  8. }
  9. // 拥有显式辨别值(explicit discriminator)的 enum
  10. enum Color {
  11. Red = 0xff0000,
  12. Green = 0x00ff00,
  13. Blue = 0x0000ff,
  14. }
  15. fn main() {
  16. // `enum` 可以转成整形。
  17. println!("zero is {}", Number::Zero as i32);
  18. println!("one is {}", Number::One as i32);
  19. println!("roses are #{:06x}", Color::Red as i32);
  20. println!("violets are #{:06x}", Color::Blue as i32);
  21. }

参考:

类型转换