? Rust · 运算符
错误传播运算符;当 Result/Option 是 Err/None 时提前返回,否则解包成功值。
怎么用
表达式?,用于传播错误
小例子
fn 解析(s: &str) -> Result<i32, std::num::ParseIntError> {
let n: i32 = s.parse()?;
Ok(n * 2)
}
fn main() { println!("{:?}", 解析("21")); }
运行结果
Ok(42)
提醒:只能在返回 Result、Option 等实现 Try 的函数中使用
官方文档:https://doc.rust-lang.org/reference/expressions/operator-expr.html#r-expr.try
在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← Rust全部词条