pcall可以返回被调用函数的值而不是布尔结果true / false吗?
例如
function f()
return 'some text'
end
print(tostring(pcall(f)))
print将仅显示true或false,而不是f
返回的值答案 0 :(得分:13)
tostring仅选择第一个参数。
a,b = pcall(f)
print(b) --> 'some text'
答案 1 :(得分:3)
function f()
return 'some text'
end
local status, res = pcall(f)
如果 pcall ()成功, status 为true, res 是 f ()的返回值。 如果 pcall ()失败,则状态为false, res 为错误消息。