Rust futures:修订间差异

来自WHY42
Riguz留言 | 贡献
无编辑摘要
标签2017版源代码编辑
Riguz留言 | 贡献
无编辑摘要
标签2017版源代码编辑
第17行: 第17行:
     // Url of Google is https://google.com
     // Url of Google is https://google.com
}
}
</syntaxhighlight>


</syntaxhighlight>
If result is Err, then unwrap will panic:




<syntaxhighlight lang="rust">
fn main() {
    let site: String = String::from("Unknown");
    let url: String = get_url(&site).unwrap();
    println!("Url of {} is {}", site, url);
    // thread 'main' panicked at src/main.rs:27:38:
    // called `Result::unwrap()` on an `Err` value: 2
}
</syntaxhighlight>
[[Category:Rust]]
[[Category:Rust]]

2024年12月28日 (六) 11:31的版本

Result

Unwrap

fn get_url(name: &String) -> Result<String, i32> {
    match name.as_str() {
        "Google" => Ok(String::from("https://google.com")),
        "Bing" => Ok(String::from("https://bing.com")),
        "" => Err(1),
        _ => Err(2),
    }
}

fn main() {
    let site: String = String::from("Google");
    let url: String = get_url(&site).unwrap();
    println!("Url of {} is {}", site, url);
    // Url of Google is https://google.com
}

If result is Err, then unwrap will panic:


fn main() {
    let site: String = String::from("Unknown");
    let url: String = get_url(&site).unwrap();
    println!("Url of {} is {}", site, url);
    // thread 'main' panicked at src/main.rs:27:38:
    // called `Result::unwrap()` on an `Err` value: 2
}