Estoy intentando implementar una subclase de NSMutableDictionary que devuelve nil en lugar de arrojar una NSUndefinedKeyException cuando la clave no está presente en el Diccionario.Subclase NSMutableDictionary
Sin embargo, cuando intento agregar objetos a mi diccionario Puedo obtener
[NSMutableDictionary setObject:forKey:]: method only defined for abstract class
NilDictionary.h
@interface NilDictionary : NSMutableDictionary {
}
@end
NilDctionary.m
@implementation NilDictionary
- (id)valueForUndefinedKey:(NSString *)key {
return nil;
}
@end
es lo que realmente tiene que poner en práctica todos los métodos de NSMutableDictionary otra vez en mi subclase o hay alguna otra clase que debería ser subclas ¿canta?
aclaración: Mi problema original fue que no pude leer la documentación correctamente.
Si necesita la subclase NSMutableDictionary, busque la respuesta correcta. Si quiere un diccionario que devuelve nada cuando su clave no está presente, NSMutableDictionary ya lo hace.
¿Qué haces exactamente con un diccionario para que arroje una 'NSUndefinedKeyException'? Intentar acceder a una clave no válida en un diccionario automáticamente devuelve 'nil' de todos modos; ¿Cómo estás obteniendo este error? –