这是一个非常愚蠢的错误,我敢肯定,但我找不到它
我发现的主要是忘记#import
行的人
我没有。
我对objective-c很新,并尝试过协议,但我现在有8个错误...
我很确定它是协议,因为我的协议中有2个错误,所有其他错误都说'无法找到协议定义'我认为是由协议中的错误引起的。
这是代码:
#import <UIKit/UIKit.h>
#import "CongTile.h"
@protocol TileDelegate
- (UIColor *)colorForTile:(CongTile *)tile; // Expected ')' before 'CongTile'
- (BOOL) drawArmyOnTile:(CongTile *)tile; // same error
@end
答案 0 :(得分:4)
尝试丢失#import "CongTile.h"
,转而使用@class CongTile;
如果您使用#import
并且两个文件最终互相导入,则创建一个导入循环。
假设任何实现TileDelegate
的类都是NSObject
的后代,您可能希望将协议声明为
@protocol TileDelegate <NSObject>
这样编译器就知道,只要在代码中使用id<TileDelegate> delegate
,对象就会响应<NSObject>