이 코드가 NSLog(@"Count: %@", [fetchedObjects count]);
일 때 EXC_BAD_ACCESS
오류가 발생합니다. fetchedObjects가 nil
이 아니기 때문에 객체가 아직 가져 오지 않았기 때문에 그런 것처럼 보입니다. 나는 lastObject
에 대한 count
을 변경하면 작동하고 다음이 콘솔에 인쇄됩니다 것으로 나타났습니다가져온 개체에서 count 호출시 EXC_BAD_ACCESS
<Albums: 0x4dc7120> (entity: Albums; id: 0x4d9ad60 <x-coredata://xxxxxxxxxxxxxxxx/Albums/p1> ; data: <fault>)
코드
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Albums" inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity];
NSError *error = nil;
NSArray *fetchedObjects = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error];
if (error != nil) {
NSLog(@"Error: %@", error);
}
if (fetchedObjects != nil) {
NSLog(@"objects is not nil");
}
NSLog(@"Count: %@", [fetchedObjects lastObject]);
for (Albums *info in fetchedObjects) {
NSLog(@"Album: %@", info);
NSLog(@"Name: %@", info.name);
}
[fetchRequest release];
당신의 어떤 사람이 어떤 포인터가있는 경우, 그 것 큰.
감사합니다.
업데이트 나는 형식 지정자 % d 또는 % 내가, 내 실수해야 깨달았다. 그러나 numbersOfRowsInSection 메서드에서 count 함수를 호출 할 때 같은 오류가 발생합니다. 형식 지정로
맞습니다.하지만 독자적으로 카운트 기능을 호출하면 정확히 동일한 오류가 발생합니다. 그러면 문제가 무엇이겠습니까? – xidew
빈 스택이 맞다면 가져온 객체의 개수를 정수 값으로 출력하고 object에 대해 % @로 로깅하므로 % d와 함께 인쇄해야합니다. – Sabby