IOS学习 copy的一些认识
2015-05-07 18:46
211 查看
NSMutableString *string = [NSMutableString
stringWithString:
@"origion"];
//retainCount = 2 string
// NSMutableString *string1 = [@"origion" copy]; //巨大的数
// NSString *stringCopy = [string copy]; //retainCount = 2 string stringCopy retainCount
= 1
// NSMutableString *mStringCopy = [string copy]; //retainCount = 2 string mStringCopy retainCount = 1
// NSMutableString *stringMCopy = [string mutableCopy];
//// [mStringCopy appendString:@"mm"];//error
// [string appendString:@" origion!"];
// [stringMCopy appendString:@"!!"];
(把不可变变量进行拷贝成可变变量时也是深拷贝)
1.copy在对可变变量进行拷贝时,是深拷贝,但是将NSString拷贝成NSString这种的时候和retain时一样的
2.再对NSArray时或者NSMutableArray时,只能深拷贝元素的指针,元素的内容无法深拷贝。
stringWithString:
@"origion"];
//retainCount = 2 string
// NSMutableString *string1 = [@"origion" copy]; //巨大的数
// NSString *stringCopy = [string copy]; //retainCount = 2 string stringCopy retainCount
= 1
// NSMutableString *mStringCopy = [string copy]; //retainCount = 2 string mStringCopy retainCount = 1
// NSMutableString *stringMCopy = [string mutableCopy];
//// [mStringCopy appendString:@"mm"];//error
// [string appendString:@" origion!"];
// [stringMCopy appendString:@"!!"];
(把不可变变量进行拷贝成可变变量时也是深拷贝)
1.copy在对可变变量进行拷贝时,是深拷贝,但是将NSString拷贝成NSString这种的时候和retain时一样的
2.再对NSArray时或者NSMutableArray时,只能深拷贝元素的指针,元素的内容无法深拷贝。
相关文章推荐
- 关于iOS学习进阶的必读一些博客总结
- ios layer的一些学习
- IOS学习笔记59-Retain、Copy以及Copy协议探讨
- 关于Yii的一些认识和学习
- iOS开发学习路径的一些建议
- iOS中copy 学习笔记
- 关情纸尾-----关于最近学习iOS开发的一些总结(一)
- IOS学习笔记 1:IOS项目开发初步认识
- 关于学习ios开发的一些笔记
- 编程学习中的一些错误认识
- 编程学习中的一些认识_转载
- iOS学习之路-UIPickerView初认识与使用
- iOS开发学习路径的一些建议
- Android中关于JNI 的学习(一)对于JNIEnv的一些认识
- 学习ios一些建议
- 软件编程学习过程中的一些认识。
- iOS开发学习路径的一些建议
- iOS开发学习路径的一些建议
- Android中关于JNI 的学习(二)对于JNI方法名,数据类型和方法签名的一些认识
- 编程学习中的一些错误认识【摘自如鹏网】