天天看點

lua upvalue

内嵌函數可以通路外包函數的局部變量,而這些局部變量則稱為該内嵌函數的外部局部變量(或者upvalue)

函數在内嵌函數之後操作局部變量:

多個内嵌函數操作同一個upvalue

 多層内嵌函數:

簡單一點的了解,就類似java的内部匿名類那樣,遇到内嵌函數通路外部函數的變量,就會建立一個匿名内部類對象,然後内嵌函數通路的都是這個對象的成員

參考:

Lua的upvalue和閉包_陳嘉怡的專欄-CSDN部落格_lua upvalue

lua