gpt4 book ai didi

lambda - 将函数作为参数传递给另一个函数

转载 作者:行者123 更新时间:2023-11-29 08:06:42 24 4
gpt4 key购买 nike

我想将一个函数作为参数传递给另一个函数:

fn call(f: | i32, i32 | -> i32, x: i32) -> i32 {
f(x, x)
}

fn main() {
let res = call(| x, y | { x + y }, 4);
println!("{}", res);
}

我收到这个错误:

main.rs:1:12: 1:13 error: expected type, found `|`
main.rs:1 fn call(f: | i32, i32 | -> i32, x: i32) -> i32 {

注释作为另一个函数的函数参数的正确方法是什么?

最佳答案

以下函数签名可能是最简单的函数签名:

fn call<F: FnOnce(i32, i32) -> i32>(f: F, x: i32) -> i32 {
...

还有一个section in the book描述了这一点。

关于lambda - 将函数作为参数传递给另一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31786924/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com