alocar + init com propriedade sintetizada - isso faz com que a contagem de retenções aumente em dois?
Eu já vi o seguinte trecho bastante:
No cabeçalho:
SomeClass *bla;
@property(nonatomic,retain) SomeClass *bla;
No arquivo de implementação:
@synthesize bla;
e depois
self.bla = [[SomeClass alloc] init];
Eu acho que essa tarefa aumenta em dois a contagem de retenção de 'bla'; uma vez através da chamada de atribuição / inicialização, e depois pela retenção que pedimos para acontecer através do configurador de propriedades sintetizado
Como resultado, normalmente declaro minhas propriedades assim:
No cabeçalho:
SomeClass *_bla; // note the underscore
@property(nonatomic,retain) SomeClass *bla;
No arquivo de implementação:
@synthesize bla = _bla;
e depois
_bla = [[SomeClass alloc] init];
Desde que minha suposição inicial esteja correta - eu estaria interessado em saber se existe uma maneira 'certa' de fazer isso, ou seja, a declaração, a inicialização e o gerenciamento de memória das propriedades?