![]() |
AW: Delphi 2009: String, UnicodeString oder WideString?
Das mit der Länge gilt eigentlich seit D1 nicht mehr, sondern nur für ShortString. ( String wurde aber u.U. je nach Einstellung bei D < D2009 als ShortString implementiert).
Bei AnsiString/UnicodeString ( außer bei nextgen) beginnt der Index zwar ab 1 (Rückwärtskompatibilität), die Implementierung ist aber wie bei C eine 0 terminierter String ( an Stelle 1 steht ein Zeiger auf den eigentlichen String) |
AW: Delphi 2009: String, UnicodeString oder WideString?
Für den genauen Aufbau siehe System.pas, wo es auch seit 2009 ein paar Funktionen zum Auslesen/Bearbeiten gibt, vorallem von der CodePage.
WideString geht schon immer auf die OleAuth32.dll und stellt quasi nur einen Wrapper dar, welcher u.A. auf ![]() String ist ein compilerabhängiger "Alias" und geht auf AnsiString (D2 bis D2007), UnicodeString (seit D2009) und ShortString (D1, wobei es dort nur diesen String gab und es noch keine Alias war) intern ist es ein aufgemotztes "dynamisches Array"
PS: Schaut mal in die OH ... dort tut wirklich manchmal jemand was und man hat den String-Aufbau dort nun auch endlich mal dokumentiert. Zitat:
![]() ![]() ![]() ![]() ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz