rust中如果一个函数的参数是闭包要怎么写?
时间: 2024-05-05 08:19:13 浏览: 93
详解 Rust 的函数与闭包.pdf
在 Rust 中,如果一个函数的参数是闭包,可以使用闭包类型来指定参数类型。闭包类型由管道符号(|)包围的参数列表、箭头(->)和闭包体组成,如下所示:
```rust
fn foo<F>(closure: F)
where
F: Fn(i32) -> i32,
{
// function body
}
```
这个示例说明了一个名为 `foo` 的函数,它有一个名为 `closure` 的参数,该参数接受一个闭包类型,该闭包类型有一个 `i32` 类型的参数和一个 `i32` 类型的返回值。这个 `Fn(i32) -> i32` 表示闭包必须实现 `Fn` trait,并且该 trait 包含一个接受 `i32` 类型的参数并返回 `i32` 类型的方法。
阅读全文