Rust中的Fn、FnMut 和 FnOnce都有什么区别?

💡 原文中文,约300字,阅读约需1分钟。
📝

内容提要

在Rust中,闭包类型有三个trait:Fn、FnMut和FnOnce。Fn是最基本的闭包trait,表示闭包可以捕获环境变量的不可变引用;FnMut表示闭包可以捕获环境变量的可变引用,可以修改环境变量的值;FnOnce表示闭包只能调用一次,可以捕获环境变量的所有权,可以移动环境变量的值。

🎯

关键要点

  • 在 Rust 中,闭包类型有三个 trait:Fn、FnMut 和 FnOnce。

  • Fn 是最基本的闭包 trait,表示闭包可以捕获环境变量的不可变引用。

  • FnMut 表示闭包可以捕获环境变量的可变引用,可以修改环境变量的值。

  • FnOnce 表示闭包只能调用一次,可以捕获环境变量的所有权,移动环境变量的值。

🏷️

标签

➡️

继续阅读