P.CTF.02 优先使用模式匹配而非判断后再取值
【描述】
Rust 中 模式匹配 是惯用法,而不是通过 if
判断值是否相等。
【反例】
#![allow(unused)] fn main() { let opt: Option<_> = ...; // 不符合 if opt.is_some() { let value = opt.unwrap(); ... } // 不符合 let list: &[f32] = ...; if !list.is_empty() { let first = list[0]; ... } }
【正例】
#![allow(unused)] fn main() { // 符合 if let Some(value) = opt { ... } // 符合 if let [first, ..] = list { ... } }