国产探花免费观看_亚洲丰满少妇自慰呻吟_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; 在此之前什么也不打印。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 定南县| 东至县| 大理市| 通许县| 三原县| 政和县| 陇西县| 桐庐县| 博兴县| 沂水县| 松潘县| 凯里市| 龙里县| 许昌县| 镇坪县| 汉寿县| 揭阳市| 西华县| 古浪县| 青州市| 临夏县| 九龙城区| 娱乐| 朔州市| 天全县| 游戏| 杭州市| 郓城县| 丰顺县| 华宁县| 乐昌市| 新安县| 大同市| 襄汾县| 靖江市| 玛沁县| 九龙城区| 神池县| 仪征市| 四子王旗| 永和县|