//
// main.m
// OC语言学习
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSData *data;
NSMutableArray *dataArray = [NSMutableArray arrayWithObjects:
[NSMutableString stringWithString:@"one"],
[NSMutableString stringWithString:@"two"],
[NSMutableString stringWithString:@"three"],
nil
];
NSMutableArray *dataArray2;
NSMutableString *mStr;
//使用归档器进行深拷贝
data = [NSKeyedArchiver archivedDataWithRootObject:dataArray];
dataArray2 = [NSKeyedUnarchiver unarchiveObjectWithData:data];
mStr = [dataArray2 objectAtIndex:0];
[mStr appendString:@"ONE"];
NSLog(@"dataArray2[0]= %@",dataArray2[0]); //dataArray2[0]= oneONE
//查看原数组(原数组没有改变)
NSLog(@"dataArray[0]= %@",dataArray[0]); //dataArray[0]= one
}
return 0;
}
使用NSKeyedArchiver进行深拷贝
最新推荐文章于 2018-09-29 09:54:28 发布