1
CJSHWork как класс определяется в CJSHWork.h и CJSHWork.m. В CJSHWork.h у меня есть:Ошибка «Нет видимых @interface» с методом
@interface CJSHWork : NSObject
@property (nonatomic, copy) NSString *name;
@property (nonatomic, copy) NSString *title;
@property (nonatomic, copy) NSString *url;
-(id) initWithName:(NSString *)name filename:(NSString *)title content:(NSString *)url;
@end
В CJSHWork.m у меня есть:
- (id) initWithName:(NSString *)name title:(NSString *)title content:(NSString *)url
{
self = [super init];
if (self)
{
_name = name;
_title = title;
_url = url;
}
}
И у меня есть, в CJSHDataController.m,
import "CJSHWork.h"
...
CJSHWork *work = [[CJSHWork alloc] initWithName:@"" title:allWorks[i][1] url:url];
Обнаружили ошибку «Нет visible @interface для CJSHWork объявляет селектор initWithName title url ".
Что здесь происходит, и как я могу это исправить?
Это хуже, чем это. Метод объявляется с одним именем в файле .h и реализуется с другим именем в .m в дополнение к вызову его с еще одним именем. – rmaddy
Спасибо вам обоим. Я сделал (явно неполный) переключатель в именах переменных. – JonathanHayward