Freigeben über


basic_string-Klasse

Bei den von einem Objekt der basic_string-Vorlagenklasse gesteuerten Sequenzen handelt es sich um die Standard-C++-Zeichenfolgenklasse, und sie werden normalerweise als Zeichenfolgen bezeichnet. Allerdings sollten diese nicht mit den in der C++-Standardbibliothek verwendeten auf NULL endenden Zeichenfolgen im C-Stil verwechselt werden. Die C++-Standardzeichenfolge ist ein Container, der die Verwendung von Zeichenfolgen als Normaltypen, wie das Verwenden von Vergleichs- und Verkettungsvorgängen, Iteratoren, STL-Algorithmen sowie das Kopieren und Zuweisen mit von Klassenzuweisung verwaltetem Arbeitsspeicher, ermöglicht. Falls eine C++-Standardzeichenfolge in eine auf Null endende Zeichenfolge im C-Stil konvertiert werden muss, verwenden Sie den basic_string::c_str-Member.

template <class CharType, class Traits = char_traits<CharType>, class Allocator = allocator<CharType>> class basic_string;

Parameter

  • CharType
    Der Datentyp eines einzelnen in der Zeichenfolge zu speichernden Zeichens. Die C++-Standardbibliothek bietet Spezialisierungen dieser Vorlagenklasse mit den Typdefinitionen string für Elemente des Typs char, wstring für wchar_t, u16string für char16_t und u32string für char32_t.

  • Traits
    Verschiedene wichtige Eigenschaften der CharType-Elemente in einer basic_string-Spezialisierung werden von der Klasse Traits beschrieben. Der Standardwert ist char_traits<CharType>.

  • Allocator
    Der Typ, mit dem das gespeicherte Zuordnungsobjekt darstellt wird, mit dem Details zum Belegen und Freigeben des Arbeitsspeichers der Zeichenfolge gekapselt werden. Der Standardwert ist allocator<CharType>.

Konstruktoren

basic_string

Erstellt eine Zeichenfolge, die leer ist, oder von bestimmten Zeichen initialisiert wird, oder eine vollständige oder teilweise Kopie eines anderen Zeichenfolgenobjekts oder einer C-Zeichenfolge ist.

Typedefs

allocator_type

Ein Typ, mit dem die allocator-Klasse für ein Zeichenfolgenobjekt dargestellt wird.

const_iterator

Ein Typ, der einen Iterator mit zufälligem Zugriff bereitstellt, mit dem auf ein const-Element zugegriffen, und mit dem dieses Element gelesen werden kann.

const_pointer

Ein Typ, der einen Zeiger auf ein const-Element in einer Zeichenfolge bereitstellt.

const_reference

Ein Typ, der einen Verweis auf ein const-Element bereitstellt, das in einer Zeichenfolge zum Lesen und Ausführen von const-Vorgängen gespeichert ist.

const_reverse_iterator

Ein Typ, der einen Iterator mit zufälligem Zugriff bereitstellt, mit dem jedes const-Element gelesen werden kann.

difference_type

Ein Typ, der den Unterschied zwischen zwei Iteratoren, die auf Elemente innerhalb derselben Zeichenfolge verweisen, bereitstellt.

Iterator

Ein Typ, der einen Iterator mit zufälligem Zugriff bereitstellt, mit dem jedes Element in einer Zeichenfolge gelesen oder geändert werden kann.

npos

Ein auf – 1 initialisierter Integralwert ohne Vorzeichen, der bei einem Fehler mit einer Suchfunktion entweder "nicht gefunden" oder "alle verbleibenden Zeichen" angibt.

pointer

Ein Typ, der einen Zeiger auf ein Zeichenelement in einer Zeichenfolge oder einem Zeichenarray bereitstellt.

Verweis

Ein Typ, der einen Verweis auf ein in einer Zeichenfolge gespeichertes Element bereitstellt.

reverse_iterator

Ein Typ, der einen Iterator mit zufälligem Zugriff bereitstellt, mit dem ein Element in einer umgekehrten Zeichenfolge gelesen oder geändert werden kann.

size_type

Ein Integraltyp ohne Vorzeichen für die Anzahl von Elementen in einer Zeichenfolge.

traits_type

Ein Typ für die Zeichenmerkmale der in einer Zeichenfolge gespeicherten Elemente.

value_type

Ein Typ, der die Art der in einer Zeichenfolge gespeicherten Zeichen darstellt.

Memberfunktionen

append

Fügt am Ende einer Zeichenfolge Zeichen hinzu.

assign

Weist dem Inhalt einer Zeichenfolge neue Zeichenwerte zu.

at

Gibt einen Verweis auf das Element an einer angegebenen Position in der Zeichenfolge zurück.

back

begin

Gibt ein Iterator zurück, der das erste Element in der Zeichenfolge adressiert.

c_str

Konvertiert den Inhalt einer Zeichenfolge als eine auf NULL endende Zeichenfolge im C-Format zurück.

Kapazität

Gibt die höchste Anzahl von Elementen zurück, die ohne Erhöhung der Speicherbelegung der Zeichenfolge in einer Zeichenfolge gespeichert werden können.

cbegin

Gibt einen const-Iterator zurück, der das erste Element in der Zeichenfolge adressiert.

cend

Gibt einen const-Iterator zurück, der den Speicherort adressiert, der dem letzten Element einer Zeichenfolge nachfolgt.

clear

Löscht alle Elemente einer Zeichenfolge.

compare

Vergleicht eine Zeichenfolge mit einer angegebenen Zeichenfolge, um zu bestimmen, ob die beiden Zeichenfolgen gleich sind, oder ob eine lexikografisch kleiner als die andere ist.

copy

Kopiert höchstens eine angegebene Anzahl von Zeichen aus einer indizierten Position in einer Quellzeichenfolge in ein Zielzeichenarray. Veraltet. Verwenden Sie stattdessen basic_string::_Copy_s.

crbegin

Gibt einen const-Iterator zurück, der das erste Element in einer umgekehrter Zeichenfolge adressiert.

crend

Gibt einen const-Iterator zurück, der den Speicherort adressiert, der dem letzten Element einer umgekehrten Zeichenfolge nachfolgt.

_Copy_s

Kopiert höchstens eine angegebene Anzahl von Zeichen aus einer indizierten Position in einer Quellzeichenfolge in ein Zielzeichenarray.

Daten

Konvertiert den Inhalt einer Zeichenfolge in ein Zeichenarray.

empty

Testet, ob in der Zeichenfolge Zeichen enthalten sind.

end

Gibt einen Iterator zurück, der den Speicherort adressiert, der dem letzten Element einer Zeichenfolge nachfolgt.

Löschen

Entfernt ein Element oder einen Reihe von Elementen einer Zeichenfolge von einer angegebenen Position.

find

Sucht eine Zeichenfolge vorwärts nach dem ersten Vorkommen einer Teilzeichenfolge ab, die mit einer bestimmten Zeichensequenz übereinstimmt.

find_first_not_of

Durchsucht eine Zeichenfolge nach dem ersten Zeichen, das kein Element der angegebenen Zeichenfolge ist.

find_first_of

Durchsucht eine Zeichenfolge nach dem ersten Zeichen, das einem Element der angegebenen Zeichenfolge entspricht.

find_last_not_of

Durchsucht eine Zeichenfolge nach dem letzten Zeichen, das kein Element der angegebenen Zeichenfolge ist.

find_last_of

Durchsucht eine Zeichenfolge nach dem letzten Zeichen, das ein Element der angegebenen Zeichenfolge ist.

front

Gibt einen Verweis auf das erste Element in einer Zeichenfolge zurück.

get_allocator

Gibt eine Kopie des zum Erstellen der Zeichenfolge verwendeten allocator-Objekts zurück.

Einfügen

Fügt ein Element oder mehrere Elemente oder ein Reihe von Elementen an einer bestimmten Position in die Zeichenfolge ein.

length

Gibt die aktuelle Anzahl von Elementen in einer Zeichenfolge zurück.

max_size

Gibt die Höchstanzahl von Zeichen, die eine Zeichenfolge enthalten könnte zurück.

pop_back

Löscht das letzte Element der Zeichenfolge.

push_back

Fügt ein Element am Ende der Zeichenfolge hinzu.

rbegin

Gibt einen Iterator an das erste Element in einer umgekehrten Zeichenfolge zurück.

rend

Gibt einen Iterator zurück, der auf die Position direkt hinter dem letzten Element in einer umgekehrten Zeichenfolge zeigt.

replace

Ersetzt Elemente an einer bestimmten Position in einer Zeichenfolge durch angegebene Zeichen oder Zeichen, die aus anderen Bereichen oder Zeichenfolgen oder C-Zeichenfolgen kopiert werden.

reserve

Legt die Kapazität der Zeichenfolge auf eine Zahl fest, die mindestens so groß ist, wie eine angegebene Anzahl.

resize

Gibt eine neue Größe für eine Zeichenfolge an und fügt Elemente an bzw. löscht sie bei Bedarf.

rfind

Sucht eine Zeichenfolge rückwärts nach dem ersten Vorkommen einer Teilzeichenfolge ab, die mit einer bestimmten Zeichensequenz übereinstimmt.

shrink_to_fit

Verwirft die Überkapazität der Zeichenfolge.

size

Gibt die aktuelle Anzahl von Elementen in einer Zeichenfolge zurück.

substr

Kopiert eine Teilzeichenfolge höchstens einer beliebigen Anzahl von Zeichen aus einer Zeichenfolge, beginnend an einer angegebenen Position.

swap

Tauschen Sie den Inhalt von zwei Zeichenfolgen aus.

Operatoren

operator +=

Fügt einer Zeichenfolge Zeichen an.

operator =

Weist dem Inhalt einer Zeichenfolge neue Zeichenwerte zu.

operator[]

Stellt mit einem angegebenen Index in einer Zeichenfolge einen Verweis auf das Zeichen.

Hinweise

Wenn eine Funktion aufgefordert wird, eine Sequenz zu generieren, die länger als max_size-Elemente ist, wird von der Funktion ein Längenfehler gemeldet, indem ein Objekt des Typs length_error ausgelöst wird.

Verweise, Zeiger und Iteratoren, mit denen Elemente der gesteuerte Sequenz festgelegt werden, können nach jedem Aufruf einer Funktion, mit der die gesteuerte Sequenz geändert wird, oder nach dem ersten Aufruf einer anderen als einer const-Memberfunktion ungültig werden.

Anforderungen

Header: <string>

Namespace: std

Siehe auch

Referenz

<string>

Threadsicherheit in der C++-Standardbibliothek