#Lua 的 tostring 函数
tostring (v)
说明
将参数 v 转换为字符串。
- 如果 v的元表包含索引为__tostring的元方法,则以v为参数调用该函数
- 否则,如果 v的元表包含索引为__name的字符串,则返回该字符串和对象的 ID
参数
- v- 要转换为字符串的内容
返回值
- 转换为字符串后的值
#示例
local t = { value = 10 }
-- 定义元表,包含 __tostring
local metatable = {
    __tostring = function(v) return string.format('%q', v.value) end
}
-- 设置元表
setmetatable(t, metatable)
-- 转换
print(tostring(t))
-- 定义元表,包含 __name
metatable = {
    __name = "Custom Object"
}
-- 设置元表
setmetatable(t, metatable)
-- 转换
print(tostring(t))