Правильный способ изменить переменную экземпляра NSMutableDictionary?
-
21-09-2019 - |
Вопрос
У меня есть Objective-C NSmutableDictionary, объявленный внутри раздела @interface класса, с методами получения/установки, например:
@interface myClass : NSObject
{
NSMutableDictionary *dict;
}
- (void) setDict: (NSMutableDictionary *) newDict;
- (NSMutableDictionary *) dict;
Внутри некоторых моих методов @implementation я хочу изменить диктовать.Я бы хотел придерживаться стандартной идиомы Obj-C и изменить ее «правильно».Можно ли изменить его следующим образом, используя геттер, а не сеттер:
[[self dict] removeObjectForKey:@"myKey"];
...или есть лучший способ сделать это?
Решение
Это сработает, но почему бы не сделать:
[dict removeObjectForKey:@"myKey"];
Внутри реализации класса у вас есть прямой доступ к переменным экземпляра, и их прямое использование является идиоматическим Objective-C.
Не связан с StackOverflow