Переопределение свойств, соответствующих протоколам

Кажется, я получаю новую ошибку при использовании LLVM Compiler 2.0, которой у меня раньше не было.

У меня есть протокол под названием DTGridViewDelegate , определенный как:

@protocol DTGridViewDelegate

У меня есть свойство под названием делегат в DTGridView (подкласс UIScroll1254, у которого сам UIScroll39 ] делегат свойство). Это определяется как:

@property (nonatomic, assign) IBOutlet id delegate;

Теперь я получаю следующее сообщение:

DTGridView.h: 116: 63: ошибка: тип свойства 'id ' несовместим с типом 'id ', унаследованным от 'UIScrollView'

Поскольку я сказал, что DTGridViewDelegate соответствует UIScrollViewDelegate, я подумал, что можно переопределить это свойство таким образом, и это действительно первый компилятор, который предположил наличие проблемы.

Я исправил ошибку, объявив свойство как таковое:

@property (nonatomic, assign) IBOutlet id делегат;

Мне интересно, не проблема ли это компилятора?

10
задан Daniel Tull 5 March 2011 в 12:48
поделиться