你如何在FnMut上下文中使用盒装闭包?

时间:2015-10-11 22:44:48

标签: closures rust

如何在需要FnMut类型的上下文中使用盒装闭包,例如

pub fn main() {
  for n in (0..10).map(Box::new(|i| i * 2)) {
    println!("{}", n);
  }
}

1 个答案:

答案 0 :(得分:1)

Box实现Deref特征时,您可以简单地拒绝box ed函数:

fn main() {
    let boxed_fn = Box::new(|i| i * 2);
    for n in (0..10).map(*boxed_fn) {
        println!("{}", n);
    }
}