是kCFNull和[NSNull null]可互换

Tyl*_*itt 3 iphone null ios

好像是

if(myObj == (typeOfMyObj *) kCFNull){
 //myObj is null
}
Run Code Online (Sandbox Code Playgroud)

if(myObj == (typeOfMyObj *) [NSNull null]){
 //myObj is null
}
Run Code Online (Sandbox Code Playgroud)

产生相同的结果.

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

谢谢!

Jer*_*man 5

苹果公司的文档似乎没有说明这一点NSNull并且CFNullRef是免费桥接的,但似乎它们已经并且自从CFNullRef在Mac OS X 10.2中引入以来.NSNull从Mac OS X 10.0开始可用.最后,它们实际上只是用作区分NULL对象的标记值.

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