国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

Lua中使用模塊的一些基礎知識

2024-07-21 23:04:56
字體:
來源:轉載
供稿:網友

--兩個橫線開始單行的注釋,--[[加上兩個[和]表示多行的注釋--]]。

 

復制代碼 代碼如下:
-- 假設文件mod.lua的內容是:
local M = {}

 

local function sayMyName()
  print('Hrunkner')
end

function M.sayHello()
  print('Why hello there')
  sayMyName()
end

return M

 

 

復制代碼 代碼如下:
-- 另一個文件也可以使用mod.lua的函數:
local mod = require('mod')  -- 運行文件mod.lua.

 

-- require是包含模塊的標準做法。
-- require等價于:     (針對沒有被緩存的情況;參加后面的內容)
local mod = (function ()
  <contents of mod.lua>
end)()
-- mod.lua就好像一個函數體,所以mod.lua的局部變量對外是不可見的。

 

 

復制代碼 代碼如下:
-- 下面的代碼是工作的,因為在mod.lua中mod = M:
mod.sayHello()  -- Says hello to Hrunkner.

 

 

復制代碼 代碼如下:
-- 這是錯誤的;sayMyName只在mod.lua中存在:
mod.sayMyName()  -- 錯誤

 

 

復制代碼 代碼如下:
-- require返回的值會被緩存,所以一個文件只會被運行一次,
-- 即使它被require了多次。

 

-- 假設mod2.lua包含代碼"print('Hi!')"。
local a = require('mod2')  -- 打印Hi!
local b = require('mod2')  -- 不再打印; a=b.

-- dofile與require類似,只是不做緩存:
dofile('mod2')  --> Hi!
dofile('mod2')  --> Hi! (再次運行,與require不同)

 

 

復制代碼 代碼如下:
-- loadfile加載一個lua文件,但是并不允許它。
f = loadfile('mod2')  -- Calling f() runs mod2.lua.

 

 

復制代碼 代碼如下:
-- loadstring是loadfile的字符串版本。
g = loadstring('print(343)')  --返回一個函數。
g()  -- 打印343; 在此之前什么也不打印。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 遵义县| 宣武区| 错那县| 金寨县| 宁陵县| 溧阳市| 湖南省| 那曲县| 砀山县| 广元市| 保亭| 方山县| 大邑县| 浪卡子县| 温宿县| 贺兰县| 海淀区| 通海县| 金乡县| 朝阳区| 鹤庆县| 明水县| 万全县| 宜州市| 宁化县| 田东县| 深州市| 东宁县| 普宁市| 兰坪| 吴忠市| 西安市| 郴州市| 周至县| 兴仁县| 孟津县| 蒲城县| 和田县| 高阳县| 固安县| 望奎县|