lua 中 有 const 吗
答案:1 悬赏:20 手机版
解决时间 2021-03-01 14:47
- 提问者网友:半生酒醒
- 2021-03-01 01:16
lua 中 有 const 吗
最佳答案
- 五星知识达人网友:鸽屿
- 2021-03-01 02:42
没有直接的const 但可以通过一些方法模拟出来
local const = {}
local _const = {}
function newIndex(t,k,v)
if not _const[k] then
_const[k] = v
else
error("尝试给 const."..k.." 赋值")
end
end
local mt = {
__newindex = newIndex,
__index = _const
}
setmetatable(const,mt)
--以上是设置元表 const为常量表 _const为元表
---------------------
const.a = 5 --第一次可以为常量赋值
print(const.a) --可以正常输出
--------------------
const.a = 6 --如果运行这一行则会出错 提示为常量赋值
local const = {}
local _const = {}
function newIndex(t,k,v)
if not _const[k] then
_const[k] = v
else
error("尝试给 const."..k.." 赋值")
end
end
local mt = {
__newindex = newIndex,
__index = _const
}
setmetatable(const,mt)
--以上是设置元表 const为常量表 _const为元表
---------------------
const.a = 5 --第一次可以为常量赋值
print(const.a) --可以正常输出
--------------------
const.a = 6 --如果运行这一行则会出错 提示为常量赋值
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯