在rust中使用match 匹配非枚举值时,例如:
fn main() {
let val = 15;
match_demo(val);
}
const FLAG: i32 = 25;
fn match_demo(val: i32) -> i32 {
match val {
FLAG => 1,
other_value => other_value + 1,
}
}
other_value这个变量名定义必须放在最后(因为match为穷举所有匹配项),意思是匹配值与FLAG(FLAG值已经定义确定)不匹配的值都绑定给other_value。
刚开始学习时,把match当其它语言的switch对比,在看一些第三方库时,遇到类似other_value,不是明白这个other_value的意义,特此记录一下。