昨天我和Lua搞混乱,偶然发现了’newproxy’功能. http://wiki.roblox.com/index.php?title=Function_dump/Basic_functions#newproxy 我有点理解它,但我不确定它是如何有用的.我知道它会创建一个附加了元表的空
http://wiki.roblox.com/index.php?title=Function_dump/Basic_functions#newproxy
我有点理解它,但我不确定它是如何有用的.我知道它会创建一个附加了元表的空白userdata对象(如果参数为true).
newproxy如何有用?这是我在搞乱它时所做的一个例子:
local proxy = newproxy(true)
local metatable = getmetatable(proxy)
metatable.__index = function(array, key) print(array, key) end
local y = proxy[100]
--[[
OUTPUT:
userdata: 0x443ad4b4 100
]]
见
this related SO question并回答.空的userdata对于检测GC回收对象的时间非常有用.该角色可以通过Lua 5.2中的零大小的表来播放.
