System.AnsiStringT

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

C++

class RTL_DELPHIRETURN AnsiStringT : public AnsiStringBase

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
class public dstring.h System System


Beschreibung

AnsiStringT ist die C++-Entsprechung des Delphi-Datentyps für lange Strings.

In AnsiStringT können Methoden/Member aufgenommen werden, die allen Instantiierungen der Template-Klasse AnsiStringT<Codeseite> gemeinsam sind. Außerdem ist es eine Template-Klasse, die bei der Behandlung eines Delphi-AnsiString verwendet wird, für den eine Codeseite angegeben ist, und enthält Code für die jeweilige Codeseite.

Hinweis: Unter AnsiString finden Sie weitere Informationen über die Funktionalität von AnsiString.

Trotz des Namens ist AnsiStringT nicht auf den ANSI-Zeichensatz beschränkt, sondern kann jeden Zeichensatz verwenden, der vom aktuell definierten Gebietsschema unterstützt wird, einschließlich Multibyte- oder Unicode-Zeichensätze.

Delphi verwendet mehrere String-Typen, einer davon ist allgemein als AnsiString bekannt. Die Unterstützung für diesen Typ umfasst die folgenden Funktionen:

  • 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.

Vorbereitende Maßnahmen

Beachten Sie bei der Verwendung von AnsiStringT die folgenden Hinweise:

  • AnsiString selbst ist eine Typedef-Entsprechung zu AnsiStringT<Codeseite>. In C++ können Sie AnsiStringT direkt verwenden oder einen Alias wie in Delphi erstellen.
  • AnsiStringT-Variablen, denen kein Anfangswert zugewiesen wurde, enthalten einen String der Länge Null (0).
  • Für die Verwendung der C++-Streaming-Operatoren (<< und >>) mit AnsiStringT müssen Sie iostream vor system.hpp einbeziehen oder mit AnsiStringT::c_str() die interne String-Repräsentation zurückgeben. </br> Im folgenden Beispiel wird der Einsatz von AnsiString mit Streaming-Operatoren für beide Arten veranschaulicht:
Option 1 Option 2
#include <System.hpp>

int main() {
   AnsiString HelloStr = "hello";
   std::cout << HelloStr.c_str();
}
#include <iostream>
#include <System.hpp>
int main() {
   AnsiString HelloStr = "hello";
   std::cout << HelloStr.c_str();
}
Hinweis: Delphi unterstützt AnsiString ebenfalls, implementiert es aber als primitiven Typ anstatt als Klasse. Standardmäßig haben mit dem Typ String deklarierte Variablen den Typ UnicodeString.

Siehe auch