2011-10-06 15 views
6

Cuando llego a un selector pasó a mi método, debería simplemente guardarlo:¿Tengo que conservar una SEL

-(void) setCallBack:(SEL) selectorToCall 
{ 
    self->mSelectorToCall = selectorToCall; 
} 

o debería retener?

-(void) setCallBack:(SEL) selectorToCall 
{ 
    self->mSelectorToCall = [selectorToCall retain]; 
} 

Respuesta

8

No, el tipo SEL no es una referencia de objeto, básicamente es un puntero de cadena constante. Puedes asignarlo como en tu primer ejemplo.

5

No, los selectores no son objetos, por lo que no puede retenerlos.

Cuestiones relacionadas