iphone - Cómo "pasar" una cantidad variable de argumentos a NSString''s+stringWithFormat:
objective-c cocoa (1)
Me gustaría escribir una función en Objective-C como la de abajo, que toma una cantidad variable de argumentos, y pasa esos argumentos a +stringWithFormat: Sé acerca de vsnprintf , pero eso implicaría convertir el ''formato'' de NSString a C y viceversa (y también significaría convertir los marcadores de posición de formato dentro de él también ...).
El siguiente código compila, pero por supuesto no se comporta como yo quiero :)
NSString *estr(NSString *format, ...) {
va_list args;
va_start(args, format);
NSString *s = [NSString stringWithFormat:format, args];
va_end(args);
return s;
}
Básicamente: ¿hay una versión amistosa de +stringWithFormat: método +stringWithFormat: o es posible escribir una?
NSString *estr(NSString *format, ...) {
va_list args;
va_start(args, format);
NSString *s = [[[NSString alloc] initWithFormat:format arguments:args] autorelease];
va_end(args);
return s;
}
no parecen tener una versión de constructor de conveniencia "stringWith ..."