Declaração de propriedades e variáveis de instância
Percebo que você pode 'declarar duas vezes' uma variável desta maneira:
@interface A {
NSString *instanceVariable;
}
@property (nonatomic, retain) NSString *instanceVariable;
@end
Isso tem o mesmo efeito que apenas:
@interface A {
}
@property (nonatomic, retain) NSString *instanceVariable;
@end
Por que o compilador não reclama em situações como essa?