2011年5月15日 星期日

Fundation Framework-複製物件 CH18-1 mutableCopy

//

// main.m

// CH18-1 Copy_mutableCopy

//

// Created by jason on 2011/5/15.

// Copyright 2011 __MyCompanyName__. All rights reserved.

//


//#import

#import

#import

#import

#import


int main(int argc, char *argv[])

{

NSAutoreleasePool *pool=[[NSAutoreleasePool alloc] init];

NSMutableArray *dataArray= [ NSMutableArray arrayWithObjects: @"one",@"two",@"three", @"four", nil];

NSMutableArray *dataArray2;

//simple assignment

dataArray2 = dataArray; //dataArray2 指向dataArray 相同的位址

[dataArray2 removeObjectAtIndex:0]; // dataArray2 的第一個內容刪除

NSLog(@"dataArray:");

for (NSString *elem in dataArray) // dataArray內容列出

NSLog(@" %@",elem);

NSLog(@"dataArray2:");

for (NSString *elem in dataArray2) // dataArray2內容列出

NSLog(@" %@",elem);

// 以上會發現dataArraydataArray2的第一個內容都被刪除


// try a copy, then remove the first element from the copy

dataArray2=[dataArray mutableCopy];//建立dataArray可變更複製並指定給dataArray2

[dataArray2 removeObjectAtIndex:0];//dataArray2 的第一個內容刪除

NSLog(@"dataArray:");

for (NSString *elem in dataArray)// dataArray內容列出

NSLog(@" %@",elem);


NSLog(@"dataArray2:");

for (NSString *elem in dataArray2)// dataArray2內容列出

NSLog(@" %@",elem);

// 以上會發現dataArray2的第一個內容都被刪除,dataArray的第一個還在

[dataArray2 release];

[pool drain];

return 0;

// return NSApplicationMain(argc, (const char **) argv);

}

沒有留言: