我正在尝试从我的NSMutableArray中删除对象,但我一直收到bad_access错误。
我使用了“removeAllObjects”和“removeObjectAtIndex”,但这些都不起作用。
如果我向这个数组添加对象,一切都很好。
我想要做的是在再次填充之前清除我的阵列。
在尝试填充之前我没有释放数组。
请求帮助。
再见
代码:
[tab_Demandes removeAllObjects];
for (NSDictionary *demandeD in demandes)
{
NSInteger i=0;
NSString *title = [demandeD objectForKey:@"Title"];
NSString *desriptif = [demandeD objectForKey:@"Description"];
NSString *Id = [demandeD objectForKey:@"Id"];
NSString *created = [demandeD objectForKey:@"Created"];
NSString *statut = [demandeD objectForKey:@"Statut"];
NSString *copropriete = [demandeD objectForKey:@"Copropriete"];
NSString *immeuble = [demandeD objectForKey:@"Immeuble"];
NSString *lot = [demandeD objectForKey:@"Lot"];
NSString *auteur = [demandeD objectForKey:@"Author"];
NSString *auteurId = [demandeD objectForKey:@"IdAuthor"];
NSString *auteurLogin = [demandeD objectForKey:@"Login"];
Demande *dem =[[Demande alloc] init];
dem.demTitle=title;
dem.demId=Id;
dem.demCreated=created;
NSString *descriptifDecode = [desriptif stringByReplacingPercentEscapesUsingEncoding:
NSASCIIStringEncoding];
dem.demDescriptif=descriptifDecode;
dem.demIdCopro=copropriete;
dem.demIdImmeuble=immeuble;
dem.demIdLot=lot;
dem.demStatut=statut;
dem.demAuteur=auteur;
dem.demIdAuteur=auteurId;
dem.demLoginAuteur=auteurLogin;
//[tab_Demandes replaceObjectAtIndex:i withObject:dem];
//i=i+1;
[tab_Demandes addObject:dem];
//[dem release];
}
如果我需要稍后删除它,我什么时候需要释放我添加到选项卡的对象?因为内存泄漏。
答案 0 :(得分:1)
并不是你发布了数组,而是数组中的一个(或多个)对象已经在数组的外部发布了。尝试打开NSZombieEnabled,看看你是否可以找出哪一个。