Swift2 王国掷接球斯威夫特2.0

Swift2 王国掷接球斯威夫特2.0,swift2,realm,Swift2,Realm,有人知道下面领域函数的try-catch的语法是什么吗 realm.write() { realm.add(whatever) } 我得到以下错误: 调用可以抛出,但它没有标记为“try”,错误也没有 处理 根据我的想象,realm.write()可以引发异常。在Swift 2中,您使用do/catch和try处理异常 我想你应该这样做: do { try realm.write() { realm.add(whatever) } } catch { pri

有人知道下面领域函数的try-catch的语法是什么吗

realm.write() {
  realm.add(whatever)
}
我得到以下错误:

调用可以抛出,但它没有标记为“try”,错误也没有 处理


根据我的想象,realm.write()可以引发异常。在Swift 2中,您使用do/catch和try处理异常

我想你应该这样做:

do {
   try realm.write() {
      realm.add(whatever)
   }
} catch {
    print("Something went wrong!")
}
若realm.write()抛出异常,将立即调用print语句。

您也可以尝试

try! realm.write {
    realm.add(whatever)
}

看起来好像抛出了一个N错误。见

在@tgebarowski的回答中添加:

do {
    try self.realm.write {
        realm.add(whatever)
    }
} catch let error as NSError {
    print("Something went wrong!")
    // use the error object such as error.localizedDescription
}

我知道这是一些领域文档,但我不明白如果他们不打算失败,为什么他们会抛出所有这些函数<代码>试试似乎有风险不?