一、前言
闭包在rust中非常常见,在前面多线程开发章节中我相信大家已经见识到,所以这里有必要对其进行详解介绍,
Rust中的闭包和C++中的lambda
表达式很像,它是一个可以保存在一个变量、或者作为一个参数传递给其它函数的匿名函数。
与普通函数的不同之处在于,它可以捕获所在作用域中的值。
二、简单使用
一个最简单的用例如下:
fn main() {
let f = |a: i32, b: i32| -> i32 {
return a + b;
};
let sum=f(10,20);
println!("{}",sum);
}