国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Lua - Lua極簡入門指南:全局變量

Lua極簡入門指南:全局變量

2020-04-16 13:27腳本之家 Lua

這篇文章主要介紹了Lua極簡入門指南:全局變量,本文講解了全局變量、_ENV等內容,需要的朋友可以參考下

全局環境

Lua 把全局變量放在一個 table _G 中,這個 table 被叫做全局環境(global environment)。打印所有的全局變量名:

 

復制代碼 代碼如下:

for n in pairs(_G) do print(n) end

 

_ENV(Lua 5.2 開始支持)

對于一個 free name(名字沒有綁定任何聲明)var 實際上會被轉換為 _ENV.var(每個 chunk 中都會存在一個名為 _ENV 的變量):

 

復制代碼 代碼如下:

v1 = 1
local v2 = 2
print(_ENV.v1)  --> 1
print(_ENV.v2)  --> nil
 
function f(v3)
    v4 = 4
    local v5 = 5
    print(_ENV.v3)  --> nil
    print(_ENV.v4)  --> 4
    print(_ENV.v5)  --> nil
 
    for v6 = 1, 2 do
        print(_ENV.v6)  --> nil
    end
end
 
f(3)

 

任何作為 _ENV 的值的 table 被叫做環境(environment)。Lua 加載一個 chunk 的時候,此 chunk 的 _ENV 默認值為全局環境。看一個簡單的例子:

 

復制代碼 代碼如下:

print(math)  --> table: 000000000078BCC0
 
local print = print
_ENV = {}
print(math)  --> nil

 

一個比較有趣的例子是:

 

復制代碼 代碼如下:

a = 2
do
    local _ENV = {print = print, a = 14}
    print(a)  --> 14
end
print(a)  --> 2

 

正如前面說的 a 會被轉換為 _ENV.a,而 do end 中定義了一個新的 _ENV,因此第一個 print(a) 輸出了局部變量 _ENV 的 a 的值。由此可以看到,我們可以很容易的為一個函數創建一個私有的環境:

 

復制代碼 代碼如下:

function factory(_ENV)
    return function()
        return a
    end
end
 
f1 = factory{a = 6}
f2 = factory{a = 7}
print(f1())  --> 6
print(f2())  --> 7

 

類似的,我們在不同的函數中共享一個特定的公共環境也是很容易做到的。

延伸 · 閱讀

精彩推薦
  • LuaLua教程(二):基礎知識、類型與值介紹

    Lua教程(二):基礎知識、類型與值介紹

    這篇文章主要介紹了Lua教程(二):基礎知識、類型與值介紹,本文講解了Hello World程序、代碼規范、全局變量、類型與值等內容,需要的朋友可以參考下 ...

    腳本之家5922020-04-28
  • LuaLua實現__add方法重載示例

    Lua實現__add方法重載示例

    這篇文章主要介紹了Lua實現__add方法重載示例,本文直接給出實現代碼,需要的朋友可以參考下 ...

    腳本之家7452020-04-24
  • LuaLua中的元方法__newindex詳解

    Lua中的元方法__newindex詳解

    這篇文章主要介紹了Lua中的元方法__newindex詳解,本文講解了查詢與更新、監控賦值、通過table給另一個table賦值等內容,需要的朋友可以參考下 ...

    笨木頭8872020-04-09
  • Lua深入探究Lua中的解析表達式

    深入探究Lua中的解析表達式

    這篇文章主要介紹了深入探究Lua中的解析表達式,對于其語法部分的說明和示例都超詳細,極力推薦此文!需要的朋友可以參考下 ...

    腳本之家3542020-05-05
  • LuaLua和C語言的交互詳解

    Lua和C語言的交互詳解

    這篇文章主要介紹了Lua和C語言的交互詳解,Lua和C語言通過棧完成交互,本文結合代碼實例詳細講解了交互的方法,需要的朋友可以參考下 ...

    果凍想3702020-04-14
  • LuaLua簡介、編譯安裝教程及變量等語法介紹

    Lua簡介、編譯安裝教程及變量等語法介紹

    這篇文章主要介紹了Lua簡介、編譯安裝教程及變量等語法介紹,本文同時講解了lua注釋語法、Lua命令行方式等內容,需要的朋友可以參考下 ...

    junjie3632020-04-14
  • LuaLua中table庫函數方法介紹

    Lua中table庫函數方法介紹

    這篇文章主要介紹了Lua中table庫函數方法介紹,本文講解了concat、insert、maxn、remove、sort、foreachi等方法,需要的朋友可以參考下 ...

    腳本之家2502020-04-17
  • LuaLua中計算、執行字符串中Lua代碼的方法

    Lua中計算、執行字符串中Lua代碼的方法

    這篇文章主要介紹了Lua中計算、執行字符串中Lua代碼的方法,類似JavaScript中eval函數的功能,在Lua中也可以實現,需要的朋友可以參考下 ...

    腳本之家6322020-04-30
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 91精品久久久久久久91蜜桃 | 精品久久久一区 | 午夜黄色影院 | 亚洲成人aaaa | 中文日韩在线 | 精品一区二区三区在线视频 | 久久久国产精品视频 | 免费视频成人国产精品网站 | 国产精品二区一区二区aⅴ污介绍 | 国产一区二区三区在线 | 日本中文字幕亚洲 | 中文字幕日韩视频 | 一区二区三区日本 | 亚洲精品久久久久久下一站 | a在线视频 | 日韩视频在线观看 | 日韩视频区| 国产精品一码二码三码在线 | 国内美女人妻一级毛片免费看 | 91视频免费网站 | 色网站在线观看 | 亚洲成人av | 另类sb东北妇女av | 91 在线 | 一本久久久 | 精品中文字幕一区 | 91精品国产视频 | 亚洲一区二区中文字幕 | 亚洲高清毛片一区二区 | 欧美一级免费 | 成人夜晚看av| 欧美日韩国产一区二区三区不卡 | 久久精品中文字幕一区二区 | 91精品国产综合久久久蜜臀粉嫩 | 日韩中文字幕在线观看视频 | 看a网站 | 国产精品毛片久久久久久久 | 久久久久久夜精品精品免费 | 国产韩国精品一区二区三区 | 黄色成人在线视频 | 亚洲淫片 |