我在C++中有一些类,我想将它们公开给Lua。我可以调用Widget:New()来获取返回的用户数据,并将元表设置为表WidgetMeta。WidgetMeta包含所有的C++函数,并且它的__index被设置为自己,所以我可以这样做:w:Foo() -- Foo is defined in C code这就是我搞不懂的部分。我希望能够将Lua定义的变量和函数放在我的userdata上,就像它是一个表一样。显然,这不能直接做到。我不能把它放在userdata上,因为我想让它在每个userdata上是唯一的。
w1 = Widget:New