Необъявленная ошибка функции

#objective-c #xcode #function

#objective-c #xcode #функция

Вопрос:

Не могли бы вы определить ошибку, пожалуйста? Почему компилятор считает, что моя функция не объявлена? Спасибо. -Роб

В файле .h

 -(int) getW:(int)xPosition;
  

В файле .m

 -(int) getW:(int)xPosition {
    return (xPosition-58)/48; 
}
  

в другой процедуре вызов функции:

 whichTile=[getW: xPosition] ;   <----ERROR getW undeclared (first use in this function)
  

(xPosition и whichTile были объявлены как целые числа и использовались ранее в процедуре). Я тоже пробовал это с (NSInteger) (и миллион других перестановок!). Спасибо за помощь.-Роб

Ответ №1:

вы объявили метод экземпляра и вызвали его без указания экземпляра.

например:

 whichTile = [self getW:xPosition];
-or-
whichTile = [anObject getW:xPosition];
  

в отличие от других языков, self не подразумевается при обмене сообщениями.