In Objective-C, it is possible to pass a class as a parameter to a method:
- (void) methodThatTakesClass:(Class)theClass;
And it is possibl
also valid:
@interface Something: Object {
}
- (void) foo:(int(*)(void))bar;
@end
@implementation Something
- (void) foo:(int(*)(void))bar {
return (*bar)();
}
@end
int someFunc( void ) {
return 9;
}
int main ( int argc, char **argv ) {
Something *object = [[Something alloc] init];
printf( "%i\n", [object foo:&someFunc] );
[object release];
return 0;
}