2010-02-04 12 views

Respuesta

11

las siguientes obras para mí, que regresan foo:

id myObj = [foo valueForKey: @"self"]; 
+1

eso está bien! No sabía que pudieras hacer eso. =) –

+0

De acuerdo, es bastante genial, y tiene sentido que puedas pedirlo de esta manera. Sin embargo, hay un escenario donde esta es tu única opción? ¿Tal vez solo puede enviar una consulta de ruta de clave a un objeto para el que no tiene un puntero a su objeto propietario? Suena como una situación extraña ... –

+0

Sí, admito que no puedo pensar en ninguna situación del mundo real en la que realmente necesite esto. Pero la frialdad de @ "yo" está en su existencia. Supongo que si te encuentras con el raro caso en el que tienes que depender mucho de KVC, deberás al ingeniero que lo hizo un camión cargado de cerveza. – Costique

3
id myObj = foo; 
+0

Esa fue una pregunta perfectamente válida sobre KVC, por cierto :) – Costique

+0

La navaja de Occam ataca de nuevo. Tiendo a estar de acuerdo con esta respuesta: si puede obtener un puntero para enviar un mensaje a un objeto, simplemente use ese puntero. Entiendo que esto es probablemente solo un ejercicio académico, pero ¿por qué gastar ciclos en la observación de valores clave cuando la respuesta es obvia? –

Cuestiones relacionadas