在Rust中有任何方法可以创建 local 函数,可以调用 more than once . 我在Python中这样做的方式是:
def method1(): def inner_method1(): print("Hello") inner_method1() inner_method1()
是的,您可以在函数内定义函数:
fn method1() { fn inner_method1() { println!("Hello"); } inner_method1(); inner_method1(); }
但是,内部函数无权访问外部作用域 . 它们只是从函数外部无法访问的普通函数 . 但是,您可以将变量作为参数传递给函数 . 要定义具有仍可从外部作用域访问变量的特定签名的函数,必须使用闭包 .
1 回答
是的,您可以在函数内定义函数:
但是,内部函数无权访问外部作用域 . 它们只是从函数外部无法访问的普通函数 . 但是,您可以将变量作为参数传递给函数 . 要定义具有仍可从外部作用域访问变量的特定签名的函数,必须使用闭包 .