一个对象使用copy或nutableCopy方法可以创建对象的副本——修改副本的时候对原来的对象不会产生影响copy:需要先实现NSCopying协议,创建的是不可变副本(如NSString、NSArray、NSDictionary)mutableCopy:需要先实现NSMutableCopying...
分类:
其他好文 时间:
2014-10-27 22:57:55
阅读次数:
166
Copy&MutableCopy使用copy和mutableCopy方法可以创建一个对象的副本。copy需要实现NSCopying协议创建的是不可变副本(如NSString、NSArray、NSDictionary)mutableCopy需要先实现NSMutableCopying协议创建的是可变副本...
分类:
移动开发 时间:
2014-10-21 19:35:31
阅读次数:
176
这里主要侧重于集合类的深浅拷贝,主要事因为工作的时候遇到这个问题。有不足的地方欢迎指正,转载请注明。首先我们需要有这样的一个前提:[array addObject:obj];这样obj的引用计数会增加1,如果使用remove则obj的引用计数会减一。ios对集合的内存处理就是这样的。那么,假设obj...
分类:
移动开发 时间:
2014-10-09 19:03:07
阅读次数:
142
http://blog.csdn.net/xdrt81y/article/details/24331103阅读本文之前首先了解copy与retain的区别,如果有不正确的地方望大家多多指教:copy与retain的区别:copy是创建一个新对象,retain是创建一个指针,引用对象计数加1。Copy...
分类:
其他好文 时间:
2014-09-19 17:35:25
阅读次数:
134
获取nsmutablearray会有问题得通过一下方法NSMutableArray*array=[[userDefaultsobjectForKey:@"key"]mutableCopy];或者先读出NSArray对象,然后NSMutableArray*mutableArray=[NSMutableArrayarrayWithArray:array]
分类:
移动开发 时间:
2014-09-18 19:10:14
阅读次数:
335
获取nsmutablearray会有问题得通过一下方法NSMutableArray*array=[[userDefaultsobjectForKey:@"key"]mutableCopy];或者先读出NSArray对象,然后NSMutableArray*mutableArray=[NSMutableArrayarrayWithArray:array]
分类:
移动开发 时间:
2014-09-18 16:48:14
阅读次数:
188
在开发工程中,很多时候我们要创建对象的副本,要创建副本,对象所在的类必须遵守 NSCopying 和 NSMutableCopying 的协议:@protocol NSCopying- (id)copyWithZone:(NSZone *)zone;@end@protocol NSMutableCo...
分类:
移动开发 时间:
2014-09-15 17:34:09
阅读次数:
163
目标:把NSDictionary对象转换成NSMutableDictionary对象,对象内容是字符串数组,需要实现完全复制(深复制)。如果调用NSDictionary的mutableCopy方法,可以得到一个NSMutableDictionary对象,但这只是浅复制,如果我们修改NSDiction...
分类:
移动开发 时间:
2014-09-11 17:00:52
阅读次数:
190
Copy & MutableCopy使用copy或mutableCopy方法可以创建一个对象的副本copy需要实现NSCoppying协议创建的是不可变副本(如NSString、NSArray、NSDictionary)mutableCopy需要先实现NSMutableCopying协议创建的是可变...
分类:
移动开发 时间:
2014-09-06 02:12:02
阅读次数:
199
一般我们在开发程序时,只管alloc,不需要管release,因为有ARC帮我们管理。但是在学习时仍需要了解:内存是有限的,在堆区分配了内存后,如果不需要,则要回收,不然内存不够引起崩溃。...
分类:
其他好文 时间:
2014-09-03 19:52:47
阅读次数:
229