闭包

#### 闭包
/**
 * 在闭包是一个功能强大的特性,它允许定义一个函数内部的函数,并访问其外部函数的变量或参数。
 * 
 * 闭包有以下特点:
 * 1. 可以实现变量常驻内存。
 * 2. 不会污染全局变量。
 * 
 * 闭包的用途:
 * 1. 可以用于定义私有变量和方法。
 * 2. 可以用于事件监听、定时器等需要保存状态的场合。
 */

// 闭包的示例
Function closureExample() {
  int count = 0;

  // 这是一个闭包,它可以访问并修改外部函数的count变量
  return () {
    print(count++);
  };
}

void main() {
  var func = closureExample();

  func();  // 输出: 0
  func();  // 输出: 1
  func();  // 输出: 2
  // 每次调用闭包,都会访问并修改外部函数的count变量
}
定义了一个`closureExample`函数,该函数内部定义了一个闭包,该闭包可以访问并修改外部函数的`count`变量。在`main`函数中,调用了`closureExample`函数并多次调用返回的闭包,每次都会输出并增加`count`变量的值。

posted on 2020-02-17 11:30  完美前端  阅读(108)  评论(0)    收藏  举报

导航