Я пытаюсь написать абстрактный класс для управления управляемыми объектами. Однако я не знаком с Objective-C и не знаю, как это сделать.Тезисы классов и литье управляемых объектов
В моем абстрактном контроллере классов у меня есть ManagedObjectContext. В моем объекте Control (который реализует abstractController) мне нужно создать объект. В абстрактном классе я следующее:
- (NSManagedObject *) getNewObject {
return (NSManagedObject *)[NSEntityDescription insertNewObjectForEntityForName:_objectName inManagedObjectContext:managedObjectContext];
}
Тогда в моей реализации я призываю это:
MyObject* object = (MyObject) [self getNewObject];
Это, однако, дает ошибку компиляции: «Cast к неполному типу» (MyObject является типа NSManagedObject)
Каков наилучший способ. Должен ли я использовать NSClassFromString? Но как же я тогда определить "getNewObject", что-то вроде:
- (id) getNewObject {
return (NSClassFromString (classname)*)[NSEntityDescription insertNewObjectForEntityForName:_objectName inManagedObjectContext:managedObjectContext];
}
, что твой MyObject ???? Я надеюсь, что это подкласс класса «NSManagedObject» –