[英]Referencing variables dynamically
我正在嘗試根據 Lua 中 function 的返回動態引用變量。 我有幾個變量,我可以單獨引用它們,但我正在嘗試清理代碼並找到一種動態引用它們的方法。
我已經嘗試了幾種不同的方法來得到這個 function,老實說我不確定它是否可以完成。 我到處尋找解決這個問題的地方,我發現只有關於創建動態變量而不是動態引用變量的說明。
varExample_1 = 3,
varExample_2 = 3,
varExample_3 = 5,
varExample_5 = 4,
varExample_4 = 2,
newVar = "varExample_" .. GetExampleType(call)
--or more specifically
if 8 > varExample_ .. GetExampleType(call) then return false end
我正在嘗試獲取變量值,但是對於所有示例,我只能將變量名稱作為字符串接收。
首先,考慮使用表而不是全局變量(盡可能避免使用它們):
local varExample = {}
varExample[1] = 3,
varExample[2] = 3,
varExample[3] = 5,
varExample[5] = 4,
varExample[4] = 2,
甚至更好
local varExample = {3, 3, 5, 4, 2}
接着
if 8 > varExample[GetExampleType(call)] then return false end
但是您堅持使用全局變量,可以使用_G
訪問它們:
if 8 > _G["varExample_"..GetExampleType(call)] then
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.