lua的模組與載入檔案,以及self的用法

2021-10-01 12:08:08 字數 371 閱讀 9335

模組:建立乙個表,把需要發出的常量,函式都放在裡面,最後返回這個表即可。

(1)require("模組名")或者 require"模組名"在第一次載入檔案的時候會執行裡面的**,再次載入的時候就不會執行了。

簡單來說就是會儲存已經載入過的檔案,不會重複載入。

(2)loadfile:只載入檔案,編譯裡面的**,但是不會執行檔案裡面的**。

(3)dofile:每次載入都會執行.

lua中的self:

lua有兩種函式的定義和呼叫,一種是用屬性的方式,一種是通過冒號的形式(其實也是屬性),兩種方式效果一樣,只不過用冒號形式申明的函式缺省會有乙個self的引數,self指向本身。我們也可以用點號「 . 」來定義函式,冒號「 :」來呼叫函式。

Lua模組的載入與記憶體釋放

今天早上聽說一件事情讓我覺得很詭異的事情 公司線上的一款遊戲,載入乙份配置資源後,記憶體漲了幾十m,然後記憶體再也下不來了。因為好奇,所以要來了最大的乙個配置檔案 4.5m,去除空格與換行後的大小 進行測試。最終發現,記憶體其實是可以被釋放的,不過需要注意以下的規則。同時,為了證明luac 與 lu...

Lua模組的載入與記憶體釋放

今天早上聽說一件事情讓我覺得很詭異的事情 公司線上的一款遊戲,載入乙份配置資源後,記憶體漲了幾十m,然後記憶體再也下不來了。因為好奇,所以要來了最大的乙個配置檔案 4.5m,去除空格與換行後的大小 進行測試。最終發現,記憶體其實是可以被釋放的,不過需要注意以下的規則。同時,為了證明luac 與 lu...

lua的模組載入require

載入指定的模組。首先函式會在 package.loaded 這個表中檢視是否已經載入 了 modname 這個模組。如果是,那麼 require 會返回儲存在 package.loaded modname 的值。否則它將嘗 試去查詢乙個載入該模組的載入器。require 是由 package.sea...