Retail变量内存管理
@interface myClass:NSObject{
NSString *strVal1;
}
@property(nonatomic,retain)NSString*strVal1;
@end
strVal1的初始化 self.strVal1 = [[[NSString alloc] init]autorelease];
尽量不要strVal1 = [[[NSString alloc] init]autorelease];
这样strVal1的内存生命周期不在我们的控制范围内
strVal1的释放 self.strVal1 = nil; 这样最彻底
[strVal1 release]也可以,可是当前的 strVal1并没有指向nil,指向系统一个内存区,最好再strVal1 = nil;
更牛的一个crash的方式就是[strVa1 release];后再 self.strVal1 = [[[NSString alloc] init]autorelease];就会crash ?知道为什么吗?
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #b72e9f}