< 返回版块

damody 发表于 2020-04-11 18:27

Tags:rust

分析rust的三種回傳包裝

// Ok-Wrapping
fn foo() -> Result<PathBuf, io::Error> {
    let base = env::current_dir()?;
    Ok(base.join("foo"))
}
// use exception
fn foo() -> PathBuf throws io::Error {
    let base = env::current_dir()?;
    base.join("foo")
}
//Try Functions
#![feature(try_blocks)]
fn foo() -> Result<PathBuf, io::Error> {
    try {
        let base = env::current_dir()?;
        base.join("foo")
    }
}

Read more

Ok(match thing { ... }) 不好嗎?

有人在boats最近的blog發現他不建議大家用

他建議除了作為返回值以外不要使用Ok-Wrapping

可以讓程式碼更清楚更容易看懂

Read more

Ok-Wrapping的心理模型

這幾天大家瘋狂的在討論Ok-Wrapping

本文只是希望以一些分析性的方式來說明

為什麼我個人不喜歡Ok-wrapping的一些原因。

Read more

用Rust編寫的GPLv2安全氣囊控制軟件

Read more


From 日报小组 @Damody

日报订阅地址:

独立日报订阅地址:

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页