Объектное значение указателя как ключ в словарь

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

Действительно ли это возможно? Это полностью против идеи NSDictionary? Я могу сказать, что, вероятно, приближаюсь к этому неправильный путь, потому что словарь хочет, чтобы я реализовал NSCopying на самом объекте, который действительно не имеет смысла с точки зрения того, что я делаю. Я вижу, что то, что я должен действительно делать, переносит значение указателя, но это кажется немного безумным.

Совет ценился бы.

5
задан Ranking Stackingblocks 25 April 2010 в 12:19
поделиться

2 ответа

NSMutableDictionary был разработан для работы только с экземплярами объектов Objective-C. Например, когда вы вызываете setObject: forKey: , метод вызывает copyWithZone: для ключа и сохраняет для значения.

Если вы хотите иметь структуру словаря и иметь возможность работать с произвольными ключами и значениями, вы можете использовать CFMutableDictionary . Вы можете точно описать, что делается, с помощью ключей и значений; он достаточно гибкий, чтобы работать с произвольными строками указателей или событий char * .

2
ответ дан 18 December 2019 в 14:43
поделиться

Думаю, вы можете использовать [NSValue valueWithPointer: object] .

11
ответ дан 18 December 2019 в 14:43
поделиться