為什麼 Rust 在我在主函式中處理完錯誤後仍然將該文件視為 `Result` 型別?

https://users.rust-lang.org/t/why-does-rust-still-consider-the-file-to-be-of-type-result-even-after-ive-handled-the-error-in-the-main-function/113749#post_1

在主函數處理錯誤後,為什麼 Rust 仍然認為該檔案是`Result`類型?

即使主要函數處理了錯誤,Rust 仍將該檔案視為`Result`類型?

“`rust
use std::{fs::File, io};

fn get_file(file_name: &str) -> Result {
let file = File::open(file_name);

let file_err = match file {
Ok(file) => return Ok(file),
Err(err) => err,
};

match file_err.kind() {
io::ErrorKind::NotFound => File::create(file_name),
_ => Err(file_err),
}
}

fn main() {
let file = get_file(“random.txt”);

if let Err(err) = file {
println!(“Error: {}”, err);
return;
}

// Result
println!(“file {:?}”, file);
}
“`

via The Rust Programming Language Forum – Latest posts

July 2, 2024 at 08:10AM

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *