Guest User

Untitled

a guest
Dec 14th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.00 KB | None | 0 0
  1. //
  2. // Persona.m
  3. // Rubrica
  4. //
  5. // Created by Domenico Fabio Lombardo on 11/09/11.
  6. // Copyright 2011 __MyCompanyName__. All rights reserved.
  7. //
  8.  
  9. #import "Persona.h"
  10.  
  11. @implementation Persona
  12.  
  13. // Crea il metodo -nome, il metodo -setNome: e la variabile _nome.
  14. @synthesize nome = _nome;
  15. @synthesize cognome = _cognome;
  16.  
  17. - (id)init
  18. {
  19. self = [super init];
  20. if (self) {
  21.  
  22. }
  23.  
  24. return self;
  25. }
  26.  
  27. - (void)dealloc;
  28. {
  29. [_nome release];
  30. [_cognome release];
  31. [super dealloc];
  32. }
  33.  
  34. /*
  35. - (NSString *)nome;
  36. {
  37. return nome;
  38. }
  39.  
  40. // Questo codice è quello prodotto da @synthesize se usi @property(retain, nonatomic).
  41. - (void)setNome:(NSString *)nuovoNome;
  42. {
  43. if (nome != nuovoNome) {
  44.  
  45. [nome sappiCheOraStaiLasciando:self];
  46.  
  47. [nome release];
  48. [nuovoNome retain];
  49. nome = nuovoNome;
  50.  
  51. [nome sappiCheOraSeiDentro:self];
  52.  
  53. }
  54. }
  55.  
  56. // Questo codice è quello prodotto da @synthesize se usi @property(copy, nonatomic).
  57. - (void)setNome:(NSString *)nuovoNome;
  58. {
  59. if (nome != nuovoNome) {
  60. [nome release];
  61. nome = [nuovoNome copy];
  62. // copy fa una copia che io possiedo. Se usassi retain, gli direi di ritenere l'oggetto puntato da NuovoNome. Usando copy gli sto dicendo di copiare nuovoNome in un posto della memoria puntato da nome e ritenerlo
  63. }
  64. }
  65. */
  66.  
  67. #pragma mark - Salvare e caricare da disco
  68.  
  69. - (void)encodeWithCoder:(NSCoder *)aCoder;
  70. {
  71. [aCoder encodeObject:[self nome] forKey:@"nome"];
  72. [aCoder encodeObject:[self cognome] forKey:@"cognome"];
  73. }
  74.  
  75. - (id)initWithCoder:(NSCoder *)aDecoder;
  76. {
  77. self = [super init];
  78. if (self) {
  79. self.nome = [aDecoder decodeObjectForKey:@"nome"];
  80. self.cognome = [aDecoder decodeObjectForKey:@"cognome"];
  81. }
  82.  
  83. return self;
  84. }
  85.  
  86. @end
  87.  
  88. /*
  89.  
  90. NSMutableString* str = [NSMutableString stringWithString:@"Ema"];
  91.  
  92. [persona setNome:ilNome];
  93.  
  94. [str appendString:@" è un figo"];
  95.  
  96. NSLog(@"%@", [persona nome]); // @"Ema"
  97.  
  98. */
Add Comment
Please, Sign In to add comment