Rust中的本地函数

时间:2014-11-01 02:18:20

标签: rust

在Rust中有任何方法可以创建本地功能,可以多次调用 。我在Python中这样做的方式是:

def method1():
  def inner_method1():
    print("Hello")

  inner_method1()
  inner_method1()

1 个答案:

答案 0 :(得分:36)

是的,您可以在函数内定义函数:

fn method1() {
    fn inner_method1() {
        println!("Hello");
    }

    inner_method1();
    inner_method1();
}

但是,内部功能无法访问外部范围。它们只是从函数外部无法访问的普通函数。但是,您可以将变量作为参数传递给函数。要定义具有仍可从外部作用域访问变量的特定签名的函数,必须使用闭包。