Как добавить свойства в NSMutableArray через расширение категории? - PullRequest
5 голосов
/ 01 ноября 2010

Я знаю, что могу "создать подкласс" NSMutableArray, используя "расширения категорий", т.е. @interface NSMutableArray (MyExtension), чтобы добавить новые функции в класс. Тем не менее, есть ли способ использовать расширения категорий, чтобы также добавить новые свойства к расширению?

Ответы [ 2 ]

1 голос
/ 02 ноября 2010

Обратите внимание, что @interface NSMutableArray (MyStuff) является категорией , а не расширением класса . Они похожи в этом контексте, но на самом деле имеют довольно много разных деталей.

Вы не можете добавить хранилище в существующий класс с помощью любого из этих механизмов. Вы можете использовать Ассоциативные ссылки , чтобы связать данные с экземпляром.

0 голосов
/ 01 ноября 2010

Как вы сказали, категории могут добавлять в класс только методы, а не ivars.Вы можете объявить методы property и setProperty: в категории, но я не уверен, где вы будете хранить фактические данные вашего псевдо-свойства.

...