【发布时间】:2011-11-14 13:26:54
【问题描述】:
我正在创建一个这样的 NSString,我应该在之后释放它吗?
CFUUIDRef uuidObj = CFUUIDCreate(nil);
NSString *device = (NSString*)CFUUIDCreateString(nil, uuidObj);
CFRelease(uuidObj);
谢谢!
【问题讨论】:
-
hmm.. 惯例是当你在你的方法中做 alloc 或有 Alloc 时,你需要释放它们。
-
我在这里分配对吗?我在任何地方都没有看到 alloc 这个词,但我假设我分配正确?
-
如果方法中没有“alloc”,那么你没有分配。您不必在这些对象上调用 release。编辑:除了alloc,还有new、copy、mutableCopy。我将 Apple 内存管理指南作为答案。
-
Kenny,这是一个属于核心基金会内存准则的核心基金会函数,它说关键字“create”实际上确实将所有权委托给调用者!
标签: objective-c ios memory-management nsstring core-foundation