Rust 标准库¶
1 Option¶
`Option` 是一个枚举,和C++17中新增的`optional`功能一致,通常用在函数可能返回空值的情况。
Option
定义如下,其中 T
是泛型参数,Some(T)
表示该枚举成员的数据类型是 T
,换句话说,Some
可以包含任何类型的数据。
enum Option<T> {
Some(T),
None,
}
需要注意的几点如下:
- 无需使用 Option::
前缀就可直接使用 Some
和 None
。
- 当使用 None
是需要显示指定类型 T,如: Option<i8>
, 当使用 Some
会自动推到
- Option
值不能直接使用,需要 unwrap()
函数获取值。
#![allow(unused)]
fn main() {
let x: i8 = 5;
let y = Some(5);
let z:Option<i8> = None;
// unwrap()获取值,不能直接使用y
let sum = x + y.unwrap();
println!("{}",sum);
}
2 Result¶
`Result`通常用于函数执行返回成功或者失败的场景。
Result
定义如下:
enum Result<T, E> {
Ok(T),
Err(E),
}