Объект уровня классаForKeyedSubscript:

Я получаю сообщение об ошибке, когда использую objectForKeyedSubscript: в качестве метода уровня класса, поэтому в моем классе "MyExample.h/.m" у меня есть что-то вроде следующего:

+ (id)objectForKeyedSubscript:(NSString*)key;

и я хочу сделать MyExample[@"key"], я инициализирую статический словарь в методе класса.

objectForKeyedSubscript: и скобки предназначены только для объектов? Есть ли альтернативный способ сделать это на уровне класса?


person Jimmy    schedule 09.09.2014    source источник
comment
Ваша интуиция о том, что это должно сработать, верна; классы являются объектами в ObjC. Они являются экземплярами своего метакласса.   -  person jscs    schedule 10.09.2014
comment
Ага. Я только что заметил другой вопрос (не появился в моем поиске). Знаете ли вы, что означает @Cy-4AH в его ответе " title=" возможно ли добавить ключевую подписку к объектам класса% 23comment35943055_23440600"> stackoverflow.com/questions/23440600/   -  person Jimmy    schedule 10.09.2014
comment
Я думаю, что речь идет о чем-то вроде этого: глобальные переменные для методов класса. Или, может быть, просто ваш базовый синглтон ObjC.   -  person jscs    schedule 10.09.2014