我们提供安全,免费的手游软件下载!

安卓手机游戏下载_安卓手机软件下载_安卓手机应用免费下载-先锋下载

当前位置: 主页 > 软件教程 > 软件教程

使用Result处理rust错误

来源:网络 更新时间:2024-05-09 15:30:52

rust处理错误时,不使用try catch,而是采用Result

在rust错误处理的文档中,内容较多,难以理解。举例来说,如果编写一个方法读取文件内容:

fn read_file_to_string(file_path: String) -> Result{
    let mut file = File::open(file_path)?;
    let mut contents = String::new();
    file.read_to_string(&mut contents)?;
    Ok(contents)
}

上述代码在文件不存在时,也可以很好地返回异常信息。

调用代码:

let r = read_file_to_string(r"d:\1111.txt".to_string());
match r {
    Ok(str) => println!("OK: {str}"),
    Err(e) => println!("Error: {e}"),
};

如果文件不存在,会输出信息:

这种异常处理过程不复杂,分为三步:

  1. 自定义的函数要返回Result

  2. 返回Result的函数时,后面加上问号

  3. 在最上层,使用match处理结果