lua中的rawset函数一般是传递表,索引和值,但我遇到了这段代码:
rawset(tbl,name,{})
Run Code Online (Sandbox Code Playgroud)
和
rawset(tbl,name, function() end)
Run Code Online (Sandbox Code Playgroud)
Rawset函数返回一个表,那么在rawset函数中有一个表或函数来表示值是什么意思?
来自参考手册:
rawset (table, index, value)
:将 table[index] 的实际值设置为 value,而不调用任何元方法。table 必须是一个表,索引任何不同于 nil 的值,并且赋值任何 Lua 值。
这意味着什么:
所以索引是名称只是表明该表是一个关联数组(除非名称是一个数字,但这会产生误导),在第一种情况下,关联值是另一个表,在第二种情况下,它是一个Lua函数。