Lua 错误处理函数 error()、 pcall()

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值无法打印
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值