TurbineXMLParser.h
#import <Foundation/Foundation.h>
@interface TurbineXMLParser : NSObject <NSXMLParserDelegate> {
...
TurbineXMLParser.m
#import "TurbineXMLParser.h"
Я только что добавил новый класс в свой текущий проект, который я ранее тестировал в одном файле. Когда я пытаюсь построить проект, я получаю сообщение об ошибке: error: не удается найти объявление протокола для 'NSXMLParserDelegate'
Я немного искал и попытался добавить следующее ...
TurbineXMLParser.h
#import <Foundation/Foundation.h>
@protocol NSXMLParserDelegate;
@interface TurbineXMLParser : NSObject <NSXMLParserDelegate> {
...
но все равно выдается предупреждение: предупреждение: определение протокола 'NSXMLParserDelegate' не найдено
любая помощь будет высоко ценится
.
.
.
EDIT_002:
Удаление <NSXMLParserDelegate>
из @interface сработало, но мне любопытно, почему я запутался и запутался? У меня сложилось впечатление, что объект делегата должен принять протокол NSXMLParserDelegate, то есть добавить <NSXMLParserDelegate>
после суперкласса.
У меня есть два случая, когда это работает по-разному, во-первых, это проект в одном файле командной строки, где, если я не добавлю <NSXMLParserDelegate>
, предупреждает, что:
class 'TestXMLParser' does not implement the 'NSXMLParserDelegate' protocol
Во втором случае я настраиваю несколько файлов * .h и * .m (одним из классов является MyXMLParser.h, MyXMLParser.m), когда я пытаюсь построить проект с <NSXMLParserDelegate>
. Я получаю эту ошибку:
error: cannot find protocol declaration for 'NSXMLParserDelegate'
Удалить <NSXMLParserDelegate>
и все работает нормально, без ошибок, без предупреждения ...
1046 * Гэри *