Lua的自我學習之路 語法學習8

2021-08-20 07:35:30 字數 919 閱讀 5345

建立乙個table

建立乙個名為 module.lua 的檔案

module={} --和檔名可以不一致

module.var="sdl"

module.func1=function()

print("這是模組module的函式")

endfunction module.func2()

print("模組方法可以放在外面")

endlocal function fun3()

print("這個是區域性函式")

endfunction func4()

print("全域性模組方法可以放在外面")

endreturn module;

模組呼叫

-- require "模組名"   引用模組(檔案的名字)

-- require (「模組名」) 這樣引用也行

require "module" --直接接受

--這樣可以不全部引用,只在需要時使用m來引用

m=require("module") --這樣可以需要用的時候呼叫

print(module.var)

module.func1()

--module.func3() 無法使用區域性函式

func4();

require載入機制

對於自定義的模組,模組檔案不是放在哪個檔案目錄都行,函式 require 有它自己的檔案路徑載入策略,它會嘗試從 lua 檔案或 c 程式庫中載入模組。

require 用於搜尋 lua 檔案的路徑是存放在全域性變數 package.path 中,當 lua 啟動後,會以環境變數 lua_path 的值來初始這個環境變數。如果沒有找到該環境變數,則使用乙個編譯時定義的預設路徑來初始化。

Lua的自我學習之路 語法學習1

要點1 lua句末的分號可不寫,但我習慣性寫上 print hello world print hello world 要點2 注釋 單行注釋 主要是前面2個 printfddsa 單行注釋多行注釋 多行注釋 要點3 lua語言沒有型別 書寫string字串型別 print hello sdl st...

Lua的自我學習之路 語法學習2

要點一 和多重注釋不同,兩邊沒有 使用 可以加進去大量字元 html 要點二 加減法,獲取長度等 print 2 8 結果為28,string型別 print 2 8 結果為10,number型別,用 時沒法用字串例子 dff3 只能用數字 number型別 例子 33.3 print 2 6 結果...

Lua的自我學習之路 語法學習10

要點 協同函式 1.建立協同函式 定義協同函式 co coroutine.create function a,b 匿名函式 無需也無法定義方法名 print a b end coroutine.resume co,20,30 啟動協同函式1.定義協同函式coroutine.create 2.啟動協同...