Function 如何避免向嵌套函数传递大量参数?

Function 如何避免向嵌套函数传递大量参数?,function,rust,nested,arguments,Function,Rust,Nested,Arguments,我已经读到,没有办法将所有外部局部参数传递给嵌套函数,但也许有一些黑客可以做到这一点?如何避免将大量参数传递到此函数中,例如: let var1 = 5; let var2 = 12.2; let var3 = bar(); let var4 = tar() * var1; // etc ... a lot of variables ... fn foo() { // want to have var1, var2, var3, var4 ... } 你想要的东西叫做: fn main

我已经读到,没有办法将所有外部局部参数传递给嵌套函数,但也许有一些黑客可以做到这一点?如何避免将大量参数传递到此函数中,例如:

let var1 = 5;
let var2 = 12.2;
let var3 = bar();
let var4 = tar() * var1;
// etc ... a lot of variables ...
fn foo() {
    // want to have var1, var2, var3, var4 ...
}
你想要的东西叫做:

fn main() {
    let var1 = 5;
    let var2 = 12.2;
    let foo = || {
        var1 as f64 + var2
    };
    println!("foo(): {}", foo()); // prints "foo(): 17.2"
}