我不希望以下代码工作,但作为语法探索的一部分,我在操场上尝试:
fn main() {
struct EOF {};
let lines = vec![Ok("line 1"), Ok("line 2"), Err(EOF {})];
for Ok(line) in lines {
println!("{}", line);
}
}
Run Code Online (Sandbox Code Playgroud)
错误消息是
error[E0005]: refutable pattern in `for` loop binding: `Err(_)` not covered
--> src/main.rs:4:9
|
4 | for Ok(line) in lines {
| ^^^^^^^^ pattern `Err(_)` not covered
Run Code Online (Sandbox Code Playgroud)
根据上面的消息,看起来我只需要为Err
案例添加一个匹配臂.但这样做的正确语法是什么?
rust ×1