小编Rav*_*hak的帖子

保留和分配有什么区别

我搜索了许多链接并阅读了很多文章,但我找不到确切的区别retainassign..

我正在尝试以下方法:

NSMutableArray *arr1 = [[NSMutableArray alloc] initWithObjects:@"1",@"2",@"3", nil];
NSMutableArray *arr2=[arr1 retain];
NSMutableArray *arr3 = arr1; //Assign

[arr1 addObject:@"66"];

NSLog(@"Array one   : %@",arr1);
NSLog(@"Array two   : %@",arr2);
NSLog(@"Array three : %@",arr3);
Run Code Online (Sandbox Code Playgroud)

输出:

Array one   : (
    1,
    2,
    3,
    66 
)  

Array two   : (
        1,
        2,
        3,
        66
)  

Array three : (
        1,
        2,
        3,
        66 
)
Run Code Online (Sandbox Code Playgroud)

以上示例给出了相同的输出.

考虑到上面的例子,我如何定义assign和之间的区别retain

如果以上示例有错,请提供更好的示例提供答案.

memory-management reference-counting objective-c ios automatic-ref-counting

1
推荐指数
1
解决办法
1320
查看次数