требовать класс в протоколе - PullRequest
1 голос
/ 18 марта 2011

В методе в моем протоколе мне требуется класс, определенный в интерфейсе ниже, как мне решить эту проблему:

@protocol MyDelegate
-(void) somethingFinished:(MyObject*)object anyOtherData:(NSData*)data;
@end

@interface MyObject : NSObject
{
   id<MyDelegate> delegate;
}

// methods

@end

Я получаю ошибку;

Ожидаемый идентификатордо ':' токен

1 Ответ

4 голосов
/ 18 марта 2011

Используйте предварительную декларацию:

:

@class MyObject;

@protocol MyDelegate
-(void) somethingFinished:(MyObject*)object anyOtherData:(NSData*)data;
@end

@interface MyObject : NSObject
{
   id<MyDelegate> delegate;
}
@end

или

@protocol MyDelegate;

@interface MyObject : NSObject
{
   id<MyDelegate> delegate;
}
@end

@protocol MyDelegate
-(void) somethingFinished:(MyObject*)object anyOtherData:(NSData*)data;
@end
...