@interface Foo : NSObject
{
extern int gGlobalVar;
int i;
}
-(void)setgGlobalVar:(int)val;
@end
@implementation Foo
-(void)setgGlobalVar:(int)val
{
i = 5;
NSLog(@"i = %i", i);
gGlobalVar = val;
}
@end
インターフェイスで宣言iし、エラーなしで実装で使用できます。externしかし、インターフェイスで型の変数を宣言することはできません。これはなぜですか?「型名ではストレージ クラスを指定できません」というエラーが表示されるのはなぜですか?