У меня есть следующий код:
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
[defs setObject:[NSNumber numberWithInt:100] forKey:@"test1.test2.test3"];
[defs setValue:[NSNumber numberWithInt:10] forKeyPath:@"test2.test3.test4"];
Я понимаю, что setObject:forKey:
создает связь между ключом test1.test2.test3 и заданным номером. С другой стороны, setValue:forKeyPath:
- метод Key-Value-Coding, который пытается найти объект для пути "test2.test3.test4", но в конце он просто ничего не делает. Он даже не модифицирует словарь!
Что меня смущает, так это то, что setValue:forKeyPath:
не вызывает каких-либо исключений и не сообщает о какой-либо ошибке. Почему это? Является ли это поведение документированным где угодно?