closure.md 440 字节
Newer Older
jackymao.com's avatar
jackymao.com 已提交
1 2 3 4 5 6 7 8
# 闭包

闭包是一个匿名函数。它和普通的函数有几个区别:
- 闭包的参数写在两个竖线中间
- 闭包可以捕获环境中的变量
  
当闭包被定义,编译器会隐式地创建一个匿名类型的结构体,用以储存闭包捕获的变量。同时,编译器会按这个闭包捕获的变量的使用方式,为这个未知类型的结构体实现 Fn、FnMut 或 FnOnce 三种 trait 中的一种。