勵志

勵志人生知識庫

什麼是閉包(closure)

閉包(Closure)是一個重要的計算機科學概念,通常指的是一個函式可以訪問並操作其自身定義範圍外的變數。

這意味著閉包允許函式捕獲並記住其創建時可見的變數,即使在函式執行完畢後,這些變數依然可以被訪問和修改。創建閉包的常見方式是在一個函式內部創建另一個函式,這樣,內部的函式便可以訪問外部函式的作用域,包括其變數。這種特性在計算機科學文獻中稱為「閉包」。閉包在實現上通常是一個結構體,它存儲了一個函式(通常是其入口地址)和一個關聯的環境,這個環境是若乾對符號和值的對應關係,包括約束變數(該函式內部綁定的符號)和自由變數(在函式外部定義但在函式內被引用的變數)。