# include
" extcode.h " < br > 2
dichiarare il prototipo per la funzione di conversione . Passare il LStrHandle da convertire con riferimento , per consentire la restituzione di un codice di errore del caso:
MgErr StringToLStrHandle ( std :: strToConvert stringa , LStrHandle & strResult ) ;
3 < p > Utilizzare la funzione " DSSetHandleSize " per ridimensionare la variabile LStrHandle passato alla funzione . La variabile LStrHandle deve essere abbastanza grande da contenere sia la stringa risultato e un intero che rappresenta la dimensione di tale stringa :
//Dichiara una variabile di errore per riferimento
MgErr errCode ;
//Ridimensiona la LStrHandle
errCode = DSSetHandleSize ( strResult , sizeof ( char ) * strToConvert.length ( ) + 4) ;
4
Copia le dimensioni dell'origine stringa nella variabile LStrHandle modificando il membro " cnt " della struttura LStrHandle :
( * strResult ) - > cnt = strToConvert.length ();
5
Utilizzare il funzione " MoveBlock " per copiare i dati della stringa dalla stringa C + + nella variabile LStrHandle . Dopo che questo è completo , riportare eventuali errori riscontrati per l'utente :
//Compilare il LStrHandle con i dati di stringa
MoveBlock ( & ( strToConvert.c_str ( ) ) , ( * strResult ) . - > str, ( * strResult ) - > cnt ) ;
//restituisce il codice di errore per l'utente, se applicabile
ritorno errCode ;
< br >