#Lua 的 rawset 函数
rawset (table, index, value)
说明
将表 table
的 index
字段值设为 value
,不会触发元表的 __newindex
字段。
参数
table
- 要设置的表index
- 索引value
- 值
返回值
- 返回
table
#示例
local t = { }
-- 元表 __newindex 将值写入此表
local uptable = {}
-- 定义元表,包含 __newindex
local metatable = {
__newindex = uptable
}
-- 设置元表
setmetatable(t, metatable)
-- 写字段
t['KEY1'] = 'VALUE1'
rawset(t, 'KEY2', 'VALUE2')
-- 查看结果
print('t is')
for k,v in pairs(t) do
print(k, v)
end
print('\nuptable is')
for k,v in pairs(uptable) do
print(k, v)
end