Eventuali duplicati:
How does an underscore in front of a variable in a cocoa objective-c class work?iOS: Uso di sé e underscore (_) con la variabile
Sono stato molto confuso con l'utilizzo di auto o di sottolineatura con nome di variabile dopo sintetizzarlo come sotto:
In .h file:
@property(nonatomic, strong) NSMutableArray *users;
In .m file:
@synthesize users = _users;
Sulla base delle mie comprensioni quando uso self.users, il sistema operativo farà in modo di rel facilitare la memoria allocata in precedenza nel metodo set in modo da non aver bisogno di fare attenzione in modo esplicito.
_users è una variabile di istanza per gli utenti e dovrebbe essere normalmente utilizzata durante l'accesso alla variabile utente. Se uso _users per cambiarne il valore, non licenzierà il delegato KVO che non notificherà una classe osservando il cambio di valore degli utenti.
Inoltre, self.users permette differenziando variabile dummy nel nome del metodo come qui di seguito,
- (void)assignUsers:(NSMutableArray*)users {
self.users = users;
}
Qualcuno potrebbe dirmi se c'è qualcosa che ho capito male o mancante durante l'utilizzo _users o self.users. Grazie.
Ciao @qegal ho passato quella discussione e se hai letto la mia domanda, la maggior parte dei punti sono i punti di conclusione ma quello che non ho potuto ottenere è quando usare cosa! – applefreak