zoukankan      html  css  js  c++  java
  • Swift_错误处理

    Swift_错误处理


    点击查看源码

    //错误处理
    func test() {
        
        //错误枚举 需ErrorType协议
        enum ErrorEnum: Error {
            case `default` //普通错误
            case other(tag: Int) //高级错误 可携带数据
        }
        
        class SomeClass {
            
            func canThrowErrors(_ str: String) throws {
                //当str不为Default时 输出错误
                guard str == "Default" else {
                    throw ErrorEnum.default
                }
                //当str不为Other时输出错误
                guard str == "Other" else {
                    throw ErrorEnum.other(tag: 5)
                }
            }
            
        }
        
        let sClass = SomeClass()
        //try! sClass.canThrowErrors("Default") // 强制调用 错误时程序闪退。
        do {
            try sClass.canThrowErrors("Default")
            try sClass.canThrowErrors("Other")
        } catch ErrorEnum.default {
            print("默认错误")
        } catch ErrorEnum.other(let tag) where tag == 5 {
            print("错误代码:(tag)")
        } catch ErrorEnum.other(let tag) {
            print("其他错误:(tag)")
        } catch {
            // 在捕获中 隐式携带error错误。
            print("未知错误:(error)")
        }
        
        /*  print
         
         错误代码:5
         
         */
    }
    
  • 相关阅读:
    二叉树后序遍历
    二叉树中序遍历
    二叉树的前序遍历
    字符串转整数
    DVWA靶场——File Inclusion(文件包含)
    DVWA-CSRF
    DVWA--COMMAND INJECTION
    DVWA练习一 暴力破解
    pikachu--SSRF
    pikachu---XXE
  • 原文地址:https://www.cnblogs.com/xubaoaichiyu/p/6508341.html
Copyright © 2011-2022 走看看