Rust 解构元组

元组可以在 match 中解构,如下所示:

fn main() {
    let pair = (0, -2);
    // 试一试 ^ 将不同的值赋给 `pair`

    println!("Tell me about {:?}", pair);
    // match 可以解构一个元组
    match pair {
        // 解构出第二个值
        (0, y) => println!("First is `0` and `y` is `{:?}`", y),
        (x, 0) => println!("`x` is `{:?}` and last is `0`", x),
        _      => println!("It doesn't matter what they are"),
        // `_` 表示不将值绑定到变量
    }
}

和前面相似,解构 enum 的方式如下:// 需要 `allow` 来消除警告,因为只使用了枚举类型的一种取值。#[allow(dead_code)]enum Color { // 这三个取值仅由它们的名字(而非类型) ...