闭包 (计算机科学) 在计算机科学中闭包英語Closure又稱词法闭包Lexical Closure或函數閉包function closures是在支持头等函数的编程语言中实现词法绑定的一种技术闭包在实现上是一个结构体它存储了一个函数通常是其入口地址和一个关联的环境相当于一个符号查找表环境里是若干对符号和值的对应关系它既要包括约束变量该函数内部绑定的符号也要包括自由变量在函数外部定义但在函数内被引用有些函数也可能没有自由变量闭包跟函数最大的不同在于当捕捉闭包的时候它的自由变量会在捕捉时被确定这样即便脱离了捕捉时的上下文它也能照常运行捕捉时对于值的处理可以是值拷贝也可以是名称引用这通常由语言设计者决定也可能由用户自行指定如C