Изменился ли синтаксис для расширений классов? - PullRequest
1 голос
/ 20 октября 2011

У меня был код как показано ниже:

@interface InterfaceWithACategory () {
    ... Some variables
}
@end

, который отлично работал при компиляции в XCode 4.0.2

Теперь я сделал обновление (уже обвиняю себя в этой глупой идее) до XCode 4.2 + iOS SDK 5.0 и у меня появляется ошибка «Ожидаемый идентификатор или» («до» {«токен».

Любая помощь будет очень признательна.

Ответы [ 2 ]

1 голос
/ 20 октября 2011

Обычно вы не можете создавать iVars для расширения класса, однако вы можете установить объявленные свойства, используя синтаксис @property.

@interface InterfaceWithACategory ()
@property (retain) NSArray *inDisArray;
@property (retain) NSInteger iThinkYouGetInt;
@end

Однако в ObjC 2.1 вы можете сделать это, но установите ваш компилятор на Apple LLVM 3.0 Я проверил это на Xcode 4.2 + iOS5.0, и он работает.

0 голосов
...