#ios #objective-c
#iOS #objective-c
Вопрос:
Привет, я новичок в разработке iOS. У меня очень мало информации об этом. Я видел ЗДЕСЬ учебное пособие, я следую ему, но почему-то я сталкиваюсь с ошибкой, и я не знаю почему.
вот мой код: это мой «AuthorVC» в моих руководствах
заголовочный файл:
#import <UIKit/UIKit.h>
#import <sqlite3.h>
@interface ServicesMani : UITableViewController{
NSMutableArray *theservices;
sqlite3 *db;
}
@property (nonatomic,retain) NSMutableArray *theservices;
-(NSMutableArray *) servicelist;
@end
и вот реализация:
@implementation ServicesMani
@synthesize theservices;
ошибка синтеза.
Комментарии:
1. В чем именно заключается ошибка? И, не глядя, вы можете сказать, что это старый учебник, поскольку вам больше не нужно использовать synthesize.
2. он говорит «недопустимый идентификатор интерфейса»
3. Вы
#import "ServicesMani.h"
вServicesMani.m
?
Ответ №1:
Удалить NSMutableArray *theservices;
между {
и }
в @interface
разделе:
@interface ServicesMani : UITableViewController{
sqlite3 *db;
}
Компилятор автоматически создаст резервную переменную экземпляра для @property theservices
.
Ответ №2:
Здесь нет необходимости использовать это утверждение. Удалите это утверждение из вашего файла .m (implementation), и это сделает это.
@synthesize theservices;
Удалите это. Должны быть синтезированы только те свойства, которые объявлены в файлах .h. И это тоже необязательно. Вам нужно удалить это и просто напрямую использовать theservices
переменную в вашем файле .m