Autant que je sache, ObjectiveC (tout comme le C et le C++) ne fournissent pas de vous avec une syntaxe qui permet à ce qui vous directement à l'esprit.
L'habitude solution de contournement consiste à créer deux versions d'une fonction. Celui qui peut être appelé directement à l'aide ... et un autre appelé par d'autres fonctions en passant les paramètres sous la forme d'une va_list.
..
[l'obj aMethod:@"tester cette %d paramètre", 1337);
[l'obj anotherMethod:@"test que %d paramètre", 666);
..
-(void) aMethod:(NSString *)a, ...
{
va_list ap;
va_start(ap, a);
[auto anotherMethod:un withParameters:ap];
va_end(ap);
}
-(void) anotherMethod:(NSString *)a, ...
{
va_list ap;
va_start(ap, a);
[auto anotherMethod:un withParameters:ap];
va_end(ap);
}
-(void) anotherMethod:(NSString *)un withParameters:(va_list)valist
{
NSLog([[[NSString alloc] initWithFormat:un des arguments:valist] autorelease]);
}