我正在尝试分配 bool 类型属性的值。当我尝试这样做时,我最终遇到了这个错误
Job appears to have crashed: Segmentation fault: 11
下面是代码:
NSMutableArray *emails = [[NSMutableArray alloc] init];
NSError *error = nil;
//This is your NSManagedObject subclass
SalesPerson * client = nil;
NSFetchRequest * request = [[NSFetchRequest alloc] init];
[request setEntity:[NSEntityDescription entityForName:@"SalesPerson" inManagedObjectContext:self.managedObjectContext]];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name == %@", query];
[request setPredicate:predicate];
NSArray *results = [self.managedObjectContext executeFetchRequest:request error:&error];
client = [results objectAtIndex:0];
client.mailed = TRUE;
NSLog(@"client email %@",client.email);
[emails addObject:client.email];
我有三个属性 name 、 email 和 mailed 。当我尝试更改实体的邮寄属性时,它会抛出上述错误。 Mailed 的类型为 bool 值。其他属性是在更新时会发生变化的字符串。
最佳答案
不确定这是否是您正在寻找的解决方案。检查您的 coredata 模型类并确保 mailed
声明为 NSNumber
而不是 BOOL
。因此,每当您存储或读取时,您都需要从一种转换为另一种。
NSNumber *aNumber = [NSNumber numberWithBool:mailed];
BOOL mailed = [aNumber boolValue];
关于objective-c - iOS 核心数据 - 段错误 11,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12832386/