方法返回值但“控件可能达到非空函数的结束”

时间:2012-11-09 22:36:40

标签: objective-c xcode

我是obj-c的新手,在这里编写一个便捷例程来从Core Data存储中获取实体。 XCode警告我,我错过了一个返回值。为什么呢?

 - (NSArray *)findEntities:(NSString *)entityName byField:(NSString *)fieldName andValue:(id)fieldValue
 {
     NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:entityName];
     NSPredicate *predicate = [NSPredicate predicateWithFormat:@"%K == %@", fieldName, fieldValue];
     [fetchRequest setPredicate:predicate];
     NSError *error;
     NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];
     if (error) {
         NSLog(@"LWStore: findEntities error: %@", [error localizedDescription]);
     }
     return fetchedObjects;
 }    

警告附加到executeFetchRequest行。

2 个答案:

答案 0 :(得分:1)

将此代码粘贴到一个新项目中没有错误,这是可以理解的,因为它看起来总是返回一个值。尝试清理,分析或任何会导致Xcode重新检查错误并查看错误是否消失的内容。

答案 1 :(得分:0)

干净整洁。按command + shift + K作为快捷方式,然后按command + b。我能够在没有任何警告的情况下构建您的方法。这可能是在那条线上出现的早期警告。干净的构建应该修复它。