Evite variáveis ​​estáticas extras para chaves de objetos associados

Ao usar objetos associados, um recurso de tempo de execução do Objective-C disponível a partir do iOS 4 e OSX 10.6, é necessário definir uma chave para armazenar e recuperar o objeto em tempo de execução.

O uso típico é definir a chave como segue

static char const * const ObjectTagKey = "ObjectTag";

e, em seguida, use é para armazenar o objeto

objc_setAssociatedObject(self, ObjectTagKey, newObjectTag, OBJC_ASSOCIATION_RETAIN_NONATOMIC);

e recuperá-lo

objc_getAssociatedObject(self, ObjectTagKey);

(exemplo tomado porhttp://oleb.net/blog/2011/05/faking-ivars-in-objc-categories-with-associative-references/)

Existe uma maneira mais clara de definir a chave de objeto associada, que não envolve a declaração de variáveis ​​extras?

questionAnswers(3)

yourAnswerToTheQuestion