Objective-C эквивалент рубиновых символов - PullRequest
0 голосов
/ 02 апреля 2012

В Ruby у нас есть символы для использования в качестве ключа хэшей. Я пытаюсь портировать библиотеку Ruby на Objective-C, и в библиотеке есть хеш, который использует символы в качестве ключей. Есть ли аналогичные решения для Objective-C? Или я должен использовать NSString s?

Ответы [ 2 ]

2 голосов
/ 02 апреля 2012

Я видел объявления типа

extern NSString *const NSKeyValueChangeNewKey = @"NSKeyValueChangeNewKey";

, чтобы вы могли использовать его в качестве ключа:

[dict objectForKey:NSKeyValueChangeNewKey];

Более подробное объяснение см. Константы в Objective-C .

0 голосов
/ 02 апреля 2012

NSDictionary ключи в Objective-C обычно NSString с. Это, вероятно, способ пойти сюда.

Вам не нужно беспокоиться о строковых литералах Ruby и символах; просто создайте NSString со строковым значением для ключа или используйте буквенную строку @"my key name", как требуется.

...