En Objective-C, est-il possible d'accéder à des variables d'instance et à des méthodes dans le cadre d'une fonction c statique? J'ai l'impression qu'il y a probablement une réponse simple à cette question que je néglige, mais je suis encore relativement nouveau dans cette langue.Accès aux variables d'instance et aux méthodes à partir d'une fonction c
Examinez le code dépouillé suivant:
@implementation MyObject
static int ammoHitSensor(cpArbiter *arb, cpSpace *space, void *unused)
{
// Call an instance method - doesn't work, self is undefined!
[self doSomethingElse];
}
-(id)init
{
// Code to create graphics, etc, hidden for clarity
// Adding a collision handler in the Chipmunk physics library
cpSpaceAddCollisionHandler(space, COL_TYPE_AMMO, COL_TYPE_SENSOR, ammoHitSensor, NULL, NULL, NULL, NULL);
}
-(void)doSomethingElse
{
// Stuff happens
}
@end
Je pense que oui une fois que je reçois dans le cadre de ammoHitSensor
, j'espère qu'il ya un moyen de revenir dans le cadre de MyObject
. Jusqu'à présent, je n'ai pas eu de chance.
Aha, qui a fait l'affaire. Merci! –