繁体   English   中英

Objective-C保留,分配和复制?

[英]objective-c retain , assign and copy?

我删除了以前的帖子...

如果我有一个拥有对象objA的类,该使用哪一个? 我知道对象是否不是班级拥有的,需要保留它。

@class A

@property (retain) ObjectA objA;

@end

@implementation A

-(void) func {
   self.objA = [[ObjectA alloc] init];
}

@end

如果将类A中的objA设置为保留,并使用init函数在func中进行了初始化。 这是2个保留计数还是1个保留计数。

alloc给出保留计数1。self.objA =将给出保留计数2(由于keep属性)

我会做的:

   - (void) func {objA = [[ObjectA alloc] init]; }

要么

   - (void) func { self.objA = [[[ObjectA alloc] init] autorelease]; }

以防止内存泄漏。 但是我更喜欢第一个解决方案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM