¡Hola a todos! Soy bastante nuevo en Objective-c, así que nunca he tenido que abordar este tema todavía. Tengo una función C en mi clase objetivo-c y quiero poder invocar un método en una propiedad de la clase object-c que lo contiene.¿Cómo le doy a la función C un puntero a 'self' (llamando a obj) en objetivo-c?
entiendo que mi función C no va a entender lo que es 'yo' si intento simplemente enviar un mensaje [self.delegate doSomething]
Asumo lo que tengo que hacer es dar mi función c un puntero a mi clase para que pueda hacer algo como esto:
myClass-> delegate -> doSomething();
Me gustaría almacenar un puntero al objeto actual (self) en una variable global porque no puedo cambiar las firmas de función. Quiero poder acceder al puntero desde cualquier función C definida dentro de esta clase. La razón de esto es que estoy escribiendo un envoltorio alrededor de una biblioteca de C que intento usar. Si puede ser ayudado ... Prefiero no modificar la fuente a esta biblioteca.
¿Alguien puede ayudarme con cómo obtener un puntero al objeto actual? ¡Gracias!
void event_privmsg (irc_session_t * session, const char * event, const char * origin, const char ** params, unsigned int count)
{
//[self.delegate privateMessage]; I would like to do the following
}
Im dándole un disparo. Lamentablemente, la función C en mi publicación es la firma real y, como puede ver, no admite una var. Definida por el usuario. Gracias por la respuesta – Nick