【Rust】Result-結果
阿新 • • 發佈:2021-12-24
環境
- Rust 1.56.1
- VSCode 1.61.2
概念
參考:https://doc.rust-lang.org/rust-by-example/error/result.html
示例
Result 和 Option 有點類似,不過它代表可能失敗,而不是可能不存在。
恐慌
fn multiply(first: &str, second: &str) -> i32 { let first_number = first.parse::<i32>().unwrap(); let second_number = second.parse::<i32>().unwrap(); first_number * second_number } fn main() { let twenty = multiply("10", "2"); println!("double is {}", twenty); let tt = multiply("t", "2"); println!("double is {}", tt); }
在 main 中使用
use std::num::ParseIntError;
fn main() -> Result<(), ParseIntError> {
let number = "10";
let number = match number.parse::<i32>() {
Ok(number) => number,
Err(e) => return Err(e),
};
println!("{}", number);
Ok(())
}
總結
瞭解了 Rust 中 Result 型別,一般是在可能發生錯誤的時候使用。