目标C,关于引用计数的问题

cod*_*ons 1 objective-c

 -(void)addNode{
       Node *node = [[Node alloc] init];
       [node fromBytes:nodeData];
       [neighborNodes addObject:[node retain]];
       [node release];
 }
Run Code Online (Sandbox Code Playgroud)

假设我有这样的方法.正在分配节点并将其添加到NSMutableArray(neighborNodes是NSMutableArray ..)我不确定此处是否需要[node retain]语句.我可以这样做吗?我把保留的话拿出来并没有释放节点..哪一个是正确的?提前致谢...

 -(void)addNode{
       Node *node = [[Node alloc] init];
       [node fromBytes:nodeData];
       [neighborNodes addObject:node];
 }
Run Code Online (Sandbox Code Playgroud)

And*_*rsK 5

不需要它

addObject对对象执行保留

IOW

-(void)addNode{
       Node *node = [[Node alloc] init];
       [node fromBytes:nodeData];
       [neighborNodes addObject:node];
       [node release];
 }
Run Code Online (Sandbox Code Playgroud)

会是对的.