rust 大抵是病了,它担心大家太容易掌握了
5261:
举个例子
闭包
fn add_one_v1 (x: u32) -> u32 { x + 1 }
let add_one_v2 = |x: u32| -> u32 { x + 1 };
let add_one_v3 = |x| { x + 1 };
let add_one_v4 = |x| x + 1 ;
初看确实好理解,也能掌握,就算再加上
immutable 、mutable 、move 也能理解
但是再 加上边界 、FnOnce 、Fnmut 这些就给我整不会了,干懵逼了
impl<T> Option<T> {
pub fn unwrap_or_else<F>(self, f: F) -> T
where
F: FnOnce() -> T
{
match self {
Some(x) => x,
None => f(),
}
}
}
我只想说 rust 是所有语言中把符号运用到极致的语言!
继续苟着看下去!