Pergunta

Eu sei que é necessário se o seu objeto for usado como chave em um NSDictionary.Existem outros momentos como este em que o NSCopying é necessário?

Se eu acho que não preciso que meus objetos de modelo estejam em conformidade com o NSCopying, provavelmente estou errado?

Foi útil?

Solução

Quando está sendo passado para uma propriedade de cópia ou qualquer outro método que seja documentado como copiando seu argumento.

Outras dicas

Pense no protocolo NScopying como a versão Objective-C das rotinas de clonagem. Se um chamador clonasse seu objeto, qual é o comportamento que você gostaria? Se o seu objeto for composto exclusivamente de tipos primitivos, você não precisará se preocupar com isso. Mas se você tiver algum tipo complexo como membros, poderá cloná -los/copiá -los em vez de passar referências simples a eles.

NSCopying tem uso bastante amplo.Sempre que um objeto possui algo que não deveria ser compartilhado com outros objetos, você precisará de uma cópia.Objetos mutáveis ​​geralmente precisam ser copiados, embora NSMutableCopying pode ser necessário em vez de NSCopying.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top