它不仅仅是一个 常量集合,而是一个代数数据类型(algebraic data type, ADT)。
它可以有多个变体(variant),而且每个变体可以携带不同的类型和不同的数量的数据。

enum Message {
    Quit,                       // 不带数据
    Move { x: i32, y: i32 },    // 带命名字段 (struct-like)
    Write(String),              // 带一个值(tuple-like)
    ChangeColor(i32, i32, i32), // 带多个值(tuple-like)
}

标签: none

添加新评论