解决循环协议声明

Solving circular protocol declarations

我正在尝试解决这个问题,有类似的问题,但 none 适合我的问题

我有一个带有@protocol 的.h 文件。 @interface 需要有那个 @protocol 定义。但是@protocol 需要class 的定义。循环.

如何解决?

@protocol myProtocol

-(void)setupMyClass:(MyClass *)class;

@end

@inteface MyClass

@property (weak, nonatomic) id<myProtocol> delegate;

@end

如果我使用不同的文件,每个文件都需要导入另一个,所以这并不能解决问题

前向声明 class:

@class MyClass;    // Forward declaration

@protocol MyProtocol
...
@end

@interface MyClass
...
@end