Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
如果我有这个构造:
a.key = b
并且 a 都有一个附加的元表,b 有一个附加的元表。然后会调用 b 的 metatable setter 将 key 设置为 b。这是 lua 5.3.0 的错误吗?
编辑: a 和 b 是字符串。
表和完整的用户数据具有单独的元表(尽管多个表和用户数据可以共享它们的元表)。所有其他类型的值每个类型共享一个元表;也就是说,所有数字都有一个元表,所有字符串都有一个元表,等等。默认情况下,一个值没有元表,但字符串库为字符串类型设置了一个元表(参见第 6.4 节)。
来自文档的回答。这是一个特性:a 和 b 是字符串,因此共享它们的元表。