[英]crash happens when NSMutableArray is returned?
我已經編寫了類似的代碼(該函數將被反復調用),但是返回的對象將給出“ BAD ACCESS”,NSLog將輸出正確的字符串,但是有時toReturn(我被反復調用)會導致崩潰。這段代碼,如果我刪除了“自動發布”方法,那就好了
- (NSMutableArray *)getAll:(NSString *)type
{
NSLog(@"Type: %@", type);
NSMutableArray *toReturn = [[[NSMutableArray alloc] initWithCapacity:0] autorelease];
rs = [db executeQuery:Query1];
while ([rs next]) {
[toReturn addObject:[rs stringForColumn:@"Name"]];
NSLog(@"name: %@", [rs stringForColumn:@"Name"]);
}
[rs close];
return toReturn;
}
您需要確保在此期間未釋放字符串。 嘗試改變
[toReturn addObject:[rs stringForColumn:@"Name"]];
至
[toReturn addObject:[[rs stringForColumn:@"Name"] copy]];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.