你需要发布一些非常简单的东西吗?
NSString *a = @"Hello";
//[a release]; ?
我来自一个java / c#世界,我很困惑什么时候应该发布/保留...
答案 0 :(得分:2)
没有。您只需要自己release
/ init
alloc
对象或您的班级dealloc
方法中的实例变量。
答案 1 :(得分:1)
不,你不需要释放一个常量的NSString,但如果你这样做,它不会引起任何问题。常量字符串是内存管理系统的特例。由于它们的内容在编译时是已知的,因此它在应用程序二进制文件本身中是静态定义的,因此它不必在运行时分配或释放。因此,它的保留和释放方法都是noops。
仅适用于常量NSStrings(以@开头的字符串)及其免费桥接表兄,常量CFStrings(使用CFSTR()宏定义)。