System.AnsiStringBase
C++
class RTL_DELPHIRETURN AnsiStringBase
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
class | public | dstring.h | System | System |
Beschreibung
AnsiStringBase ist die Basisklasse für die C++-Entsprechung des Delphi-Datentyps für lange Strings.
In AnsiStringBase können Methoden/Member aufgenommen werden, die allen Instantiierungen der Template-Klasse AnsiStringT<Codeseite> gemeinsam sind. AnsiString selbst ist eine Typedef-Entsprechung zu AnsiStringT<0>. Verwenden Sie AnsiStringBase nicht direkt.
AnsiStringT ist eine Template-Klasse, die bei der Behandlung eines Delphi-AnsiString verwendet wird, für den eine Codeseite angegeben ist.
In Delphi werden verschiedene String-Typen eingesetzt. Ein wichtiger langer String-Typ ist AnsiString. Die Unterstützung für diesen Typ zeichnet sich durch Folgendes aus:
- Strings können so groß wie der verfügbare Arbeitsspeicher sein.
- Eine effiziente Speichernutzung wird durch gemeinsame Referenzen gewährleistet.
- Routinen und Operatoren werten Strings auf der Grundlage des aktuellen Gebietsschemas aus.
Trotz ihres Namens ist die Klasse AnsiStringBase nicht auf den ANSI-Zeichensatz beschränkt, sondern kann jeden Zeichensatz verwenden, der vom aktuell definierten Gebietsschema unterstützt wird, einschließlich Multibyte- und Unicode-Zeichensätze.
AnsiStringBase-Variablen, denen kein Anfangswert zugewiesen wurde, enthalten einen String der Länge Null (0).
Für die Verwendung der C++-Streaming-Operatoren (<< und >>) mit AnsiStringBase-Typen müssen Sie iostream vor system.hpp einbeziehen und mit AnsiStringT::c_str() die interne String-Repräsentation zurückgeben. Im folgenden Beispiel wird der Einsatz von AnsiString mit Streaming-Operatoren veranschaulicht.
# include <iostream>
# include <system.hpp>
int main() {
AnsiString HelloStr = "hello";
std::cout << HelloStr.c_str();
}
Hinweis: Delphi unterstützt AnsiString auch, implementiert es aber als primitiven Typ anstatt als Klasse. UnicodeString ist nun der Standard-String-Typ. Standardmäßig haben mit dem Typ String deklarierte Variablen den Typ UnicodeString.