我正在尝试在Lua中实现自己的字符串长度方法。我已经成功地覆盖了字符串的len()方法,但是我不知道如何为#运算符做到这一点。
orig_len = string.len
function my_len(s)
print(s)
return orig_len(s)
end
string.len = my_len
abc = 'abc'
如果我调用:
print(abc:len())
它输出:
abc
3
但是。
print(#abc)
输出结果为“3”,这意味着它调用了原始的长度函数而非我的函数。有没有办法让#调用我的长度函数?