我希望有人能夠理解我的NSMutableArray會發生什麼。對象的NSMutableArray行爲異常
我從數據庫中讀取記錄a,b,c,d,將這些字段加載到對象中並將對象添加到數組中。爲此,我將記錄讀入該對象的實例(tmpEvent),並將該對象添加到目標數組(NSMutableArray myArray)。
代碼如下:
for (condition) {
tmpEvent.field1 = [NSString stringWithUTF8String:(char*)sqlite3_column_text(stmt, 0)];
tmpEvent.field2 = [NSString stringWithUTF8String:(char*)sqlite3_column_text(stmt, 1)];
tmpEvent.field3 = [NSString stringWithUTF8String:(char*)sqlite3_column_text(stmt, 2)];
NSLog(@"myArray: adding %@", tmpEvent.field1);
[myArray addObject:tmpEvent];
}
的NSLog的顯示
myArray: adding a
myArray: adding b
myArray: adding c
myArray: adding d
後續I枚舉陣列(這可以是在相同或不同的方法):
for (myObject *records in myArray) {
NSLog(@"iEvents value %@", records.field1);
}
現在顯示:
myArray value d
myArray value d
myArray value d
myArray value d
一個謎....有什麼想法嗎?
明白,特別喜歡「複製」的選擇。但是這是否意味着當我釋放數組agein時,我需要枚舉並「手動」釋放對象? – iFloh 2010-04-22 13:26:08
嗯,剛剛嘗試了複製方法。用無法識別的選擇器獲取未捕獲的異常。 如何讓我的對象符合NSCopy協議?我沒有在蘋果文件中找到它... – iFloh 2010-04-22 13:49:54
Wohow ...肯尼,你正在清理很多行李與我在一起。非常感謝,謝謝8-) – iFloh 2010-04-22 14:25:24