我试图从一个在不同类上使用单例模式的类调用方法。我使用的教程并没有使用效果很好的单例,但我似乎无法实现我需要的东西。我一直收到一个错误,上面写着预期的标识符。我假设这可能是由于语法原因,但我似乎无法解决它。 POI是来自核心数据的NSManagedObject子类。
这是我使用单身人士的版本。错误指向DataSource之前的括号。
NSArray *itemGroups = [POI [DataSource sharedInstance] fetchDistinctItemGroupsInManagedObjectContext:managedObjectContext];
这是等效的(来自教程)没有单身
NSArray *itemGroups = [POI fetchDistinctItemGroupsInManagedObjectContext:managedObjectContext];
答案 0 :(得分:2)
你应该有一些喜欢:[[POI sharedInstance] fetchDistinctItemGroupsInManagedObjectContext:managedObjectContext];
答案 1 :(得分:2)
如果您希望能够以这种方式使用POI
课程:
NSArray *itemGroups = [POI fetchDistinctItemGroupsInManagedObjectContext:managedObjectContext];
然后我会建议添加这样的代码:
// POI.h
+ (NSArray *)fetchDistinctItemGroupsInManagedObjectContext:(NSManagedObjectContext *)context;
// POI.m
+ (NSArray *)fetchDistinctItemGroupsInManagedObjectContext:(NSManagedObjectContext *)context {
return [[DataSource sharedInstance] fetchDistinctItemGroupsInManagedObjectContext: context];
}