在Lua中,是否使用表格作为键调用__eq元方法?

Hal*_*Hal 5 lua metadata

我想知道如果table[key]这里key是一个元表将调用表__eq元方法.例如,如果表有一个键,"a"并且如果将"a"与metatable进行比较,则__eq metamethod返回true,那么使用表索引表将返回"a"的值吗?

hug*_*omg 5

不,索引使用原始平等:http://www.lua.org/manual/5.2/manual.html#2.4

您应该考虑在编制索引之前将对象显式转换为字符串表示,而不是依赖隐式元方法.