0

我试图模仿:

b = {1,2,3}
a = setmetatable({1,nil,3},{__index = b})
print(a[2]) -- prints 2

接着就,随即:

b = {1,2,3}
a = setmetatable({1,nil,3},{__index = function(t,k) rawget(b,k) end})
print(a[2]) -- nil

我做错什么了?

4

1 回答 1

4

您需要在元方法中返回一个值:

return rawget(b,k)
于 2016-02-08T15:12:01.807 回答