我试图在 swift 中传递错误指针,但无法这样做。编译器抱怨“NSError 无法转换为‘NSErrorPointer’”。
var error: NSError = NSError()
var results = context.executeFetchRequest(request, error: error)
if(error != nil)
{
println("Error executing request for entity \(entity)")
}
您只需传递一个引用,如下所示:
var error: NSError?
var results = context.executeFetchRequest(request, error: &error)
if error != nil {
println("Error executing request for entity \(entity)")
}
这里有两个重要的点:
-
NSError?
是一个可选的(并初始化为nil
)
- 您使用以下方法通过引用传递
&
运算符(例如,&error
)
See: 将 swift 与 cocoa 和 Objective-c 一起使用 https://developer.apple.com/library/prerelease/ios/documentation/swift/conceptual/buildingcocoaapps/AdoptingCocoaDesignPatterns.html#//apple_ref/doc/uid/TP40014216-CH7-XID_9
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)