一、let模式匹配
在其它一些语言中,let x = 5 之类的语句,仅仅只是赋值语句。但是在rust中,可以换个角度理解,认为5这个值匹配到了x变量。...y: i32,
}
fn main() {
let p = Point { x: 10, y: 20 };
//模式匹配
let Point { x, y } = p...另外_在模式匹配中,还可以避免所有权转移:
let s = Some(String::from("hello"));
//由于_不关注值,所以s的所有权不会move到_
if let...,s);
但如果,把Some(_),换成其它方式,比如
不仅仅是系统自带的enum,开发人员自定义的enum也一样可以进行匹配:
enum Order {
New { order_id...("p中的x,y匹配到{},{}", x, y),
_ => println!("others"),
}