strings pair tuples stl
Lernen Sie schnell die grundlegenden Konzepte von Strings, Pair & Tuples in STL.
In diesem Tutorial erwerben wir Grundkenntnisse über Strings, Pair und Tuples in STL, bevor wir zu detaillierten und umfassenderen Konzepten wie Iteratoren, Algorithmen und Containern springen.
Obwohl Strings auf die gleiche Weise wie in der allgemeinen C ++ - Sprache verwendet werden, lohnt es sich, sie aus STL-Sicht zu diskutieren. Wir können uns Strings als einen sequentiellen Container von Zeichen vorstellen. Auch wenn wir uns mit Vorlagenklassen in STL befassen, ist es sehr wichtig, dass wir das Konzept von PAIR und TUPLE in Bezug auf STL kennen.
=> Lesen Sie hier die ausführlichen C ++ - Schulungsanleitungen.
Was du lernen wirst:
Strings In STL
Zeichenfolgen in STL unterstützen sowohl das ASCII- als auch das Unicode-Format (Breitzeichen).
STL unterstützt zwei Arten von Zeichenfolgen:
# 1) Zeichenfolge: Dies ist die Zeichenfolge im ASCII-Format. Um diese Art von Zeichenfolgenobjekten in das Programm aufzunehmen, müssen wir die Datei string.h in unser Programm aufnehmen.
#include
# 2) Wstring: Dies ist die Zeichenfolge mit breiten Zeichen. In der MFC-Programmierung nennen wir es einen CString. Um wstring-Objekte in unser Programm aufzunehmen, fügen wir die Datei xstring hinzu.
#include
Ob ASCII oder Unicode, Zeichenfolgen in STL unterstützen verschiedene Methoden genau so, wie es die anderen STL-Container tun.
Einige der vom Zeichenfolgenobjekt unterstützten Methoden sind:
- Start() : Iterator am Anfang zurückgeben.
- Ende() : Iterator am Ende zurückgeben.
- einfügen() : In String einfügen.
- löschen() : Löscht Zeichen aus der Zeichenfolge.
- Größe() : Gibt die Länge der Zeichenfolge zurück.
- leer() : Leeren Sie den Inhalt der Zeichenfolge.
Abgesehen von diesen oben genannten Methoden haben wir bereits in unseren früheren Zeichenfolgen in C ++ - Tutorials Methoden für Zeichenfolgenklassen behandelt.
Schreiben wir ein einfaches Programm, um STL-Zeichenfolgen zu demonstrieren.
implizites Warten und explizites Warten in Selen
#include #include using namespace std; int main() { string str1; str1.insert(str1.end(),'W'); str1.insert(str1.end(),'O'); str1.insert(str1.end(),'R'); str1.insert(str1.end(),'L'); str1.insert(str1.end(),'D'); for (string::const_iterator it = str1.begin(); it != str1.end(); ++it) { cout << *it; } int len = str1.size(); cout<<'
Length of string:'< Ausgabe:
WELT
Länge der Saite: 5
Wie wir gesehen haben, deklarieren wir im obigen Code ein Zeichenfolgenobjekt str1 und fügen dann mithilfe der Einfügemethode nacheinander Zeichen am Ende der Zeichenfolge hinzu. Dann zeigen wir mit einem Iteratorobjekt die Zeichenfolge an.
Als nächstes geben wir die Länge der Zeichenfolge mit der Größenmethode aus. Dies ist ein einfaches Programm, um nur die Zeichenfolgen zu demonstrieren.
PAAR In STL
Die PAIR-Klasse in STL ist praktisch, wenn Sie die assoziativen Container programmieren. PAIR ist eine Vorlagenklasse, die zwei Werte desselben oder unterschiedlichen Datentyps zusammenfasst.
Die allgemeine Syntax lautet:
pair pair1, pair2;
Die obige Codezeile erzeugt zwei Paare, d. H. Paar1 und Paar2. Beide Paare haben das erste Objekt vom Typ T1 und das zweite Objekt vom Typ T2.
T1 ist das erste Mitglied und T2 ist das zweite Mitglied von Paar1 und Paar2.
Rückgabe eines Arrays von einer Methode in Java
Im Folgenden sind die Methoden aufgeführt, die von der PAIR-Klasse unterstützt werden:
- Operator (=): Weisen Sie einem Paar Werte zu.
- Tauschen: Tauscht den Inhalt des Paares aus.
- make_pair (): Erstellen Sie ein Paar mit Objekten, die in der Parameterliste definiert sind, und geben Sie es zurück.
- Operatoren (== ,! =,>,<, = ) : Vergleicht zwei Paare lexikographisch.
Schreiben wir ein Basisprogramm, das die Verwendung dieser Funktionen im Code zeigt.
#include using namespace std; int main () { pair pair1, pair3; pair pair2; pair1 = make_pair(1, 2); pair2 = make_pair(1, 'SoftwareTestingHelp'); pair3 = make_pair(2, 4); cout<< '
Pair1 First member: '< Ausgabe:
Paar1 Erstes Mitglied: 1
Pair2 Zweites Mitglied: SoftwareTestingHelp
Paare sind nicht gleich
Im obigen Programm erstellen wir jeweils zwei Paare vom Typ Integer und ein weiteres Paar vom Typ Integer und String. Als nächstes weisen wir mit der Funktion „make_pair“ jedem Paar Werte zu.
Als nächstes vergleichen wir Paar1 und Paar2 mit dem Operator '==', um zu überprüfen, ob sie gleich sind oder nicht. Dieses Programm demonstriert die grundlegende Arbeitsweise der PAIR-Klasse.
Tupel in STL
Das Tupel-Konzept ist eine Erweiterung von Pair. Im Paar können wir zwei heterogene Objekte kombinieren, während wir in Tupeln drei heterogene Objekte kombinieren können.
Die allgemeine Syntax eines Tupels lautet:
tupletuple1;
Genau wie Pair unterstützt Tuple auch ähnliche Funktionen und einige weitere zusätzliche Funktionen.
Diese sind unten aufgeführt:
- Erbauer: Ein neues Tupel erstellen.
- Tuple_element: Gibt den Typ des Tupelelements zurück.
- make_tuple (): Erstellt ein Tupel mit Elementen, die in der Parameterliste beschrieben sind, und gibt diese zurück.
- Operatoren (== ,! =,>,<, = ): Lexikographisch werden zwei Paare verglichen.
- Operator (=): Einem Tupel einen Wert zuweisen.
- Tauschen: Den Wert von zwei Tupeln tauschen.
- Krawatte: Binden Sie die Werte eines Tupels an seine Referenzen.
Verwenden wir einige dieser Funktionen in einem Programm, um zu sehen, wie sie funktionieren.
#include #include using namespace std; int main () { tuple tuple1; tuple tuple2; tuple1 = make_tuple(1, 2,3); tuple2 = make_tuple(1,'Hello', 'C++ Tuples'); int id; string str1, str2; tie(id, str1, str2) = tuple2; cout << id <<' '<< str1 <<' '<< str2; return 0; }
Ausgabe:
1 Hallo C ++ - Tupel
Im obigen Code zur Demonstration von Tupeln erstellen wir zwei Tupel. Das erste Tupel tuple1 besteht aus drei ganzzahligen Werten. Das zweite Tupel, d. H. Tupel2, besteht aus einem ganzzahligen Wert und zwei Zeichenfolgenwerten.
Als nächstes weisen wir beiden Tupeln mit der Funktion „make_tuple“ Werte zu. Dann binden wir mit dem Funktionsaufruf „tie“ die Werte von tuple2 an id und zwei Strings oder weisen sie zu.
Schließlich geben wir diese Werte aus. Die Ausgabe zeigt die Werte von tuple2, die wir id und zwei Zeichenfolgen zugewiesen haben.
Fazit
Daher haben wir in diesem Tutorial kurz die in STL verwendeten Zeichenfolgen, Paare und Tupel erläutert. Während Strings-Operationen dem allgemeinen C ++ ähneln, können wir darüber hinaus auch Iteratoren für diese Strings betreiben.
Paar- und Tupelkonstrukte sind praktisch, wenn STL-Container programmiert werden, insbesondere die assoziativen Container.
In unserem nächsten Tutorial lernen wir Algorithmen und Iteratoren im Detail kennen, bevor wir mit STL zur eigentlichen STL-Programmierung springen.
=> Besuchen Sie hier, um die C ++ - Schulungsserie für alle zu sehen.
Literatur-Empfehlungen