点语法中 retain 和 copy的区别
2016-08-05 11:09
197 查看
验证点语法中 retain 和 copy的区别
retain情况下,str的内容不管怎么变化,car.name指向的内存地址不变 ; copy情况下,str的内容改变了,car.name指向的对内存会复制一份出来,因此内存地址是变化的 ; 如果str不是可变的NSMutableString,不管是retain还是copy,只要str的值发生变化,指向的堆内存都会改变
NSMutableString *str = [NSMutableString stringWithString:@"hello"]; Car *car = [[Car alloc] init]; car.name = str; NSLog(@"car = %p" , car.name); NSLog(@"car.name1 = %@" , car.name); [str appendString:@" world"]; car.name = str; NSLog(@"car = %p" , car.name); NSLog(@"car.name2 = %@" , car.name);
相关文章推荐
- IOS语法- @property里的assign,copy,retain区别
- 【iOS学习笔记】语法 @property里的assign,copy,retain区别
- IOS语法 @property里的assign,copy,retain的区别
- IOS atomic与nonatomic,assign,copy与retain的定义和区别
- [oc] IOS atomic与nonatomic,assign,copy与retain的定义和区别 【转】
- retain和copy的区别 #import @class 的区别
- IOS atomic与nonatomic,assign,copy与retain的定义和区别
- Objective-c中copy,retain,assign,readonly,read write,nonatomic的区别
- IOS atomic与nonatomic,assign,copy与retain的定义和区别
- retain copy asign 用法,区别
- weak和Strong,assign和retain和copy的区别
- Objective-C开发之----atomic与nonatomic,assign,copy与retain的定义和区别
- strong,weak,retain,assign,copy ,nonmatic 等的区别
- copy,mutableCopy,retain区别
- IOS atomic与nonatomic,assign,copy与retain的定义和区别
- retain和copy的区别
- iOS中assign,copy,retain之间的区别以及weak和strong的区别
- copy,assign,strong,retain,weak,readonly,readwrite,nonatomic,atomic,unsafe_unretained的使用与区别
- 合成存取器中copy和retain的区别
- retain和copy还有assign的区别