декларация двойного интерфейса для classа ‘test_coredataAppDelegate’
две ошибки, внезапно запущенные в этом fragmentе кода – декларация двойного интерфейса для classа «test_coredataAppDelegate» – переопределение «struct test_coredataAppDelegate»
#import #import @interface test_coredataAppDelegate : NSObject { ///////////////////New parts ///////////////////////// NSManagedObjectModel *managedObjectModel; NSManagedObjectContext *managedObjectContext; NSPersistentStoreCoordinator *persistentStoreCoordinator; ////////////////////////////////////////////// UIWindow *window; UITabBarController *tabBarController; } @property (nonatomic, retain, readonly) NSManagedObjectModel *managedObjectModel; @property (nonatomic, retain, readonly) NSManagedObjectContext *managedObjectContext; @property (nonatomic, retain, readonly) NSPersistentStoreCoordinator *persistentStoreCoordinator; @property (nonatomic, retain) IBOutlet UIWindow *window; @property (nonatomic, retain) IBOutlet UITabBarController *tabBarController; @end
как это исправить
С наилучшими пожеланиями
- Каков наиболее подходящий способ хранения пользовательских настроек в приложении Android
- Почему RestTemplate не связывает ответное представление с PagedResources?
- databind свойство Source для WebBrowser в WPF
- Как применить тип к экземпляру NSFetchRequest?
- Проверка MVC ниже / выше, чем другое значение
- Должно ли каждое отношение данных к Core Data иметь обратное?
- Как импортировать исходные данные в базу данных с помощью Hibernate?
- Как создать экземпляры подclassов управляемого объекта в расширении NSManagedObject Swift?
- Как работать с временными экземплярами NSManagedObject?
- jQuery DataTables - сортировать столбец точным соответствием
- insertNewObjectForEntityForName:
- Проверка эффективности ViewModel в Best Practices в ASP.NET MVC
- Как обновить существующий объект в Core Data?
Есть две возможности:
- у вас есть два интерфейса с тем же именем. Используйте опцию Xcode в опции меню проекта, чтобы найти экземпляры
test_coredataAppDelegate
. Затем переименуйте один из интерфейсов - каким-то образом вам удалось дважды импортировать файл .h. Убедитесь, что вы всегда используете
#import
а не#include
.
Редактировать:
Немного больше информации о #import
/ #include
:
#include
вслепую включает файл в месте оператора #include
. Это означает, что если вы #include
файл дважды в свой .m
вы получите две копии файла. Почти все традиционные файлы C #include
имеют следующий вид следующего брекетинга всего содержимого:
// some_file.h #if !defined SOME_FILE_H #define SOME_FILE_H // entire content of #include file #endif
Вышеупомянутое иногда упоминается как макрос включения.
В Objective-C, если вы #import
файл, проверка выполняется компилятором, чтобы убедиться, что он еще не был импортирован. Следовательно, ограждения обычно опускаются. Поэтому, если вы #include
файл, который должен был быть #import
ed, ни проверка не будет выполнена, и вы иногда получите дубликаты определений.
Это происходит потому, что у вас есть копия этого ресурса в вашем приложении. Не нужно было добавлять его в свой проект. Вы должны найти в своем приложении файлы с тем же именем и удалить дубликаты файлов.
В моем случае замена
#import "Mixpanel.h"
в
#import
Устранена ошибка
У меня есть решение для этой первой копии, например, файл video.m дает эту ошибку, поэтому скопируйте этот файл и удалите этот файл и просто вставьте его еще раз и добавьте этот файл в проект снова 🙂
Я удалил class модели даты и создаю новый и исправил ошибку. также удалить из каталога проекта.