我正在尝试从一个在不同类上使用单例模式的类中调用一个方法。我正在使用一个教程,该教程不使用效果很好的单例,但我似乎无法实现我需要的东西。我不断收到一条错误消息,指出“预期标识符”。我假设这可能是语法问题,但我似乎无法解决它。 POI 是核心数据的 NSManagedObject 子类。
这是我使用单例的版本。错误指向DataSource前的括号。
NSArray *itemGroups = [POI [DataSource sharedInstance] fetchDistinctItemGroupsInManagedObjectContext:managedObjectContext];
这是没有单例的等价物(来自教程)
NSArray *itemGroups = [POI fetchDistinctItemGroupsInManagedObjectContext:managedObjectContext];
最佳答案
如果您希望能够以这种方式使用 POI
类:
NSArray *itemGroups = [POI fetchDistinctItemGroupsInManagedObjectContext:managedObjectContext];
然后我会建议添加这样的代码:
// POI.h
+ (NSArray *)fetchDistinctItemGroupsInManagedObjectContext:(NSManagedObjectContext *)context;
// POI.m
+ (NSArray *)fetchDistinctItemGroupsInManagedObjectContext:(NSManagedObjectContext *)context {
return [[DataSource sharedInstance] fetchDistinctItemGroupsInManagedObjectContext: context];
}
关于ios - 调用单例方法 iOS 时出现预期标识符错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31685676/