# include " extcode.h "
< br > 2
Declarar el prototipo de la función de conversión . Pase el LStrHandle ser convertidos por referencia, para permitir la devolución de un código de error de aplicación :
MgErr StringToLStrHandle ( std :: string strToConvert , LStrHandle y strResult ) ;
3 < p> Utilice la función " DSSetHandleSize " para cambiar el tamaño de la variable LStrHandle pasado a la función. La variable LStrHandle debe ser lo suficientemente grande como para albergar tanto la cadena de resultado y un entero que representa el tamaño de la cadena:
//Declarar una variable de error para referencia
MgErr errcode ;
//Cambiar el tamaño del LStrHandle
errcode = DSSetHandleSize ( strResult , sizeof (char ) * strToConvert.length () + 4 ) ;
4
Copia el tamaño del origen cadena en la variable LStrHandle modificando el miembro " cnt " de la estructura LStrHandle :
(* strResult ) -> cnt = strToConvert.length ();
5
Utilice el función " MoveBlock " para copiar los datos de la cadena de la cadena de C + + en la variable LStrHandle . Después de que haya terminado , vuelva los errores encontrados al usuario:
//Llenar el LStrHandle con los datos de la cadena
MoveBlock (& ( strToConvert.c_str ()), (* strResult ) . -> str, (* strResult ) -> cnt ) ;
//devolver el código de error al usuario , en su caso
errcode retorno;
< br >