Swift2.0提供所try catch异常捕捉

     今天使用Xcode7打开之前写的一个小游戏,发现出了不少语法错,其中一处就是由于异常捕捉方式的改变导致的,原代码如下
         var error: NSError? = nil
        backgroundMusicPlayer =
            AVAudioPlayer(contentsOfURL: url, error: &error)
        if backgroundMusicPlayer == nil {
            print("Could not create audio player: \(error!)")
            return
        }

原代码中,AVAudioPlayer的构造函数有了可抛出错误的重载函数,现在的原型不接受第二个error参数,函数不再为failable,应使用try catch捕捉异常

        do{
            backgroundMusicPlayer = try
            AVAudioPlayer(contentsOfURL: url!)
        }
        catch let error as NSError {
            print("Could not create audio player: \(error)")
        }
    原文作者:Hydrogen
    原文地址: https://segmentfault.com/a/1190000003856488
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞