在Swift中转发错误

前端之家收集整理的这篇文章主要介绍了在Swift中转发错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有更好的解决方案将Swift错误从一个函数转发到另一个函数

在这一刻,我这样做:

enum Error:ErrorType{

    case Error1
    case Error2
}

func func1()throws{
     do{
         try func2()

        }catch Error.Error1{
            throw Error.Error1

        }catch Error.Error2{
            throw Error.Error2
        }
}

func func2()throws{
     // proof something
     throw Error.Error1
}

因此,要转发错误,我需要捕获所有错误并再次抛出它们.

有更好的解决方案吗?

是的:不要将它包装在do … catch块中.
func func2() throws{
     // proof something
     throw Error.Error1
}

func func1()throws{
     try func2()
}
原文链接:https://www.f2er.com/swift/320053.html

猜你在找的Swift相关文章