Sto scrivendo una classe che salverà le stringhe ampie in un file binario. Sto usando Delphi 2005 per questo, ma l'applicazione verrà successivamente portato su Delphi 2010. Mi sento molto insicuro qui, qualcuno può confermare che:Delphi WideString e Delphi 2009+
A Delphi 2005
WideString
è esattamente lo stesso tipo come Delphi 2010String
a Delphi 2005
WideString
char così come un Delphi 2010String
char è garantita sempre essere di 2 byte.
Con tutta l'Unicode formati là fuori io non voglio essere colpito con uno dei caratteri nella mia stringa di essere improvvisamente 3 byte di larghezza o qualcosa di simile.
Edit: mappe "Ho infatti detto UnicodeString, non WideString WideString esiste ancora, ed è invariato WideString viene assegnato dal gestore di memoria di Windows, e dovrebbe essere usato per interagire con gli oggetti COM WideString: trovato questo... direttamente al tipo BSTR in COM. " al http://www.micro-isv.asia/2008/08/get-ready-for-delphi-2009-and-unicode/
Ora sono ancora più confuso. Quindi un Delphi 2010 WideString
non è la stessa di Delphi 2005 WideString
? Dovrei usare invece UnicodeString
?
Modifica 2: Non c'è il tipo UnicodeString
in Delphi 2005. FML.
Perché si concludere che Delphi 2010 WideString non è la stessa di un Delphi 2005 WideString dopo aver letto una dichiarazione che dice "WideString esiste ancora ed è invariato"? –