iphone - initial - pasando el parámetro
viewport iphone (2)
Crea el método para aceptar un puntero al objeto.
-(NSString *)messageDecryption:(NSString *)receivedMessage outParam:(NSString**)messageCondent
{
*messageCondent = [receivedMessage substringFromIndex:2];
return [receivedMessage substringToIndex:1];
}
Pase en la referencia al objeto local.
NSString *messageCondent = nil;
NSString *mode = [myclassobject messageDecryption:message outParam:&messageCondent];
Escribí un método con un parámetro de salida:
-(NSString *)messageDecryption:(NSString *)receivedMessage outParam:(out)messageCondent
{
messageCondent = [receivedMessage substringFromIndex:2];
return [receivedMessage substringToIndex:1];
}
Entonces pasé el param de esta manera:
NSString *messageCondent;
NSString *mode = [myclassobject messageDecryption:message outParam:messageCondent];
Sin embargo, hay un problema. El valor del parámetro de salida no se está configurando correctamente. ¿Puede alguien ayudarme a hacer esto correctamente?
Un "parámetro de salida" es, por definición, un puntero a un puntero.
Tu método debería verse así:
-(NSString *)messageDecryption:(NSString *)receivedMessage outParam:(NSString **)messageCondent
{
*messageCondent = [receivedMessage substringFromIndex:2];
return [receivedMessage substringToIndex:1];
}
Esto elimina la referencia al puntero pasado para obtener la referencia del objeto real y luego lo asigna a lo que devuelva [receivedMessage substringFromIndex:2]
.
Invocar este método es bastante simple:
NSString *messageCondent = nil;
NSString *mode = [myclassobject messageDecryption:message outParam:&messageCondent];