error函数是让程序停止,进行错误处理
如下面代码调用error函数后悔直接报错,后续程序不再执行
function funC( num )
if num == 0 then
error("程序发生错误")
print("是否执行?")
else
return 100/m
end
end
funC(0)
print("程序继续")
pcall()函数:如果程序发生错误,不想让程序停止
pcall 有两个返回值
1 : 是否正确
2 : 错误原因
function func()
print("a")
print(a[1])-- 出现错误
end
if pcall (funC) then
print("程序继续")
else
print("程序发生错误") -- 出错后继续调用
end
print("go on") --继续调用
返回值测试:
function test()
print("a")
print(a[1]) -- 错误,将原因打印
end
local b , r = pcall(test)
print(b) --false
print(r) -- attempt to index global 'a' (a nil value) a[1] 是nil值无法打印