好像是

if(myObj == (typeOfMyObj *) kCFNull){
 //myObj is null
}


if(myObj == (typeOfMyObj *) [NSNull null]){
 //myObj is null
}

产生相同的结果。

总是这样吗?我正在开发iOS 5应用程序。

谢谢!

最佳答案

Apple的文档似乎都没有声明NSNullCFNullRef是免费桥接的,但是自从Mac OS X 10.2引入CFNullRef以来,似乎并没有。从Mac OS X 10.0开始可以使用NSNull。最后,它们实际上只是用作可分辨NULL对象的哨兵值。

您的代码可能有一种避免依赖kCFNull == [NSNull null]的方法,但是如果您由于某种原因不能这样做,那么我就不必担心太多。

关于iphone - kCFNull和[NSNull null]是否可互换,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7856736/

10-12 22:37