关于CFUUID,SO上有一些很好的例子,特别是这个:
但它是为预先ARC代码设计的,而且我不是一个CF爱好者(至少不是现在),所以可以有人提供与ARC兼容的示例代码吗?
+ (NSString *)GetUUID
{
CFUUIDRef theUUID = CFUUIDCreate(NULL);
CFStringRef string = CFUUIDCreateString(NULL, theUUID);
CFRelease(theUUID);
return [(NSString *)string autorelease];
}
get
是否会在ARC中引起问题(我一直想研究一下),但这是Cocoa中一个非常长期存在的命名约定。例如-[NSArray getObjects:range:]
,-[NSString getCharacters:range:]
等。 - jscsCFRelease(string);
? - Ky -CFBridgingRelease()
可以清楚地表明这一点,并且正如我所说的文档引用,它等效于__bridge_transfer
。 - jscs