Stl in c ++

Stl in c ++

Die Standard -Vorlagenbibliothek oder STL bietet dem Coder oder dem Programmierer eine große Menge an Einrichtungen. Wenn wir eine Bibliothek erstellen, bedeutet dies, dass wir einige Daten in der Bibliothek speichern möchten.

Um die Daten in der Bibliothek zu speichern, befolgen wir einige Methoden. STL hilft uns, diese Bibliotheken zu erstellen, indem wir einigen Methoden folgen.

STL -Komponenten

STL besteht aus drei Komponenten. Sie sind:

  1. Container
  2. Wiederholung
  3. Algorithmus

Wir diskutieren jeden von ihnen effizient.

A. Container

  • Riesige Mengen an Objekten werden korrekt im Container aufbewahrt.
  • Verschiedene Arten von Daten werden in den Container eingefügt, um die Daten auf eine bestimmte Weise zu speichern. Zum Beispiel: Array, Karte, verknüpfte Liste usw.
  • Diese Container sind allgemein im Typ. Der Begriff „generisches“ bezieht sich auf das Konzept der Vorlage in C ++, das die Elemente aller Datentypen enthalten kann.

Beispiel: Der Dickdarm weggelassen, da dies ein Unterkopf ist.

Verschiedene Datenarten werden in einem Array dynamisch in einer Vektorklasse gespeichert. Vektor ist eine Klasse von Containerkategorien.

B. Iteratoren

  • Objekte werden systematisch über die Iteratoren betrieben.
  • Es wird verwendet, um die Behälter anzuzeigen.
  • Es verbindet tatsächlich die Container und die Algorithmen auf ordnungsgemäße Weise.

Beispiel:

Die Argumente des Sort () -Algorithmus sind der Start- und End -Iterator. Diese Iteratoren helfen uns, die im Container vorhandenen Elemente als Werte oder Daten zu sortieren.

C. Algorithmus

  • Algorithmus wirkt auf Behälter. Durch den Algorithmus führen wir die verschiedenen Arten von Operationen wie Sortierung, Suche, Dateninitialisierung usw. durch.
  • Es enthält die verschiedenen Arten der standardmäßigen Funktionen, die dazu beitragen, viele Probleme im Zusammenhang mit dem Programm zu lösen.

Beispiel:

Wir können die Daten mit Hilfe einer standardmäßigen Funktion namens Reverse () umkehren, die Daten mit der Funktion "sort () usw. sortieren usw. sortieren.

Gemeinsame Klassen, die in Behältern existieren

  1. Vektor wirkt auf Arrays
  2. Warteschlangen wirkt sich an Warteschlangen aus
  3. Stapel wirkt auf Stapel
  4. Priority_queue wirkt auf Haufen
  5. Listen Sie Acts auf der verknüpften Liste auf
  6. Acts auf Bäume setzen
  7. Karte wirkt auf Arrays

Klassifizierung von Behältern

Es gibt 4 Container wie ungeordnete assoziative Behälter, Containeradapter, Sequenzbehälter und assoziative Container.

STL ist ein großes Konzept, da es viele Klassen hat. Wir werden einige wichtige Klassen in STL diskutieren.

Array:

  1. Array ist eine lineare Sammlung der ähnlichen Arten von Elementen.
  2. Wir verwenden das Header Array-#include.
  3. Hier ist das Array im Typ statisch.

Programmierbeispiel 1:

#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()

Array< int, 5 >data_array = 5, 10, 15, 20, 25; // Array -Objekt erstellen;
Data_Array.füllen (10); // Mitgliedsfunktion wird verwendet;
für (int i = 0; i<=7;i++)
Cout<< data_array[ i ] ;
Rückkehr 0;

Ausgang:

Programmierbeispiel 2:

#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()

Array< int, 5 >data_array = 5,10,15,20,25; // Array -Objekt erstellen;
Cout<< data_array.at(2) ;
Cout<< data_array[3] ;
Cout<< data_array.front() ; // member function is used ;
Cout<< data_array.back() ; // member function is used ;
Rückkehr 0;

Ausgang:

Erläuterung:

Die beiden vorherigen Programme sind das Beispiel der Array -Klasse.

Hier erklären wir ein Array. Wir speichern einige Werte wie 5, 10, 15, 20 und 25 in einem Array.

Array< int, 5 > data_array = 5, 10, 15, 20, 25;

Die (), Front (), Back () und Fill () sind wichtige Mitgliedsfunktionen, die in der Array -Vorlage verwendet werden.

Vektorklassen in STL

  1. Der allgemeinste Container ist die Vektorklasse.
  2. Es unterstützt das dynamische Array.

Deklarationstypen von Vektoren

1. Vektor V1;

Null Länge Vektoren.

2. Vektor CV (5);

Erstellt die 5 Elemente Char Vector.

3. Vektor CV (4, 'a');

Initialisiert 4 Elemente Char Vector mit „A“.

Programmierbeispiel 3:

#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()

Vektor v1;
Vektor v2 (4);
Vektor v3 (5,10);
Vektor v4 (3, "Hallo");
Cout<Cout<< v4[1] << endl ;
Cout<Rückkehr 0;

Ausgang:

Erläuterung:

Im Programm deklarieren wir die Vektoren V1, V2, V3 und V4. Wir weisen zum Zeitpunkt der Deklaration innerhalb der Vektoren V2, V3, V4 einige Werte zu. Jetzt drucken wir die Werte von 0, 1. und 2. Index von V4. Alle zeigen das gleiche Ergebnis.

Programmierbeispiel 4:

#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()

Vektor< int >v1;
Cout<< " Current Capacity is " <für (int i = 0; i<= 9; i++)
v1.push_back (10*(i+1));
Cout<< " Current capacity is " < v1.Pop zurück() ;
Cout<<" after pop \n" ;
Cout<< " Current Capacity is "<< v1.capacity() <v1.Pop zurück() ;
Cout<< "Current Capacity is "<v1.Pop zurück() ;
Cout<< " Current Capacity is " << v1.capacity() <Cout<< " total number of elements are " <

Ausgang:

Erläuterung:

Hier im Programm verwenden wir einige Mitgliederfunktionen. Einer von ihnen ist der Push_back, der zum Vektor am Ende einen Mehrwert verleiht.

Eine andere Mitgliedsfunktion ist pop_back ().Das letzte Element wird entfernt.

Eine andere Funktion, die im Programm verwendet wird, ist die Kapazität (). Es gibt die Kapazität des Vektors zurück.

Das letzte, aber nicht zuletzt ist die Größe (), die die Größe der Daten bestimmt.

Abschluss

Im Konzept von STL sind wir zu dieser Schlussfolgerung gekommen, dass STL ein großes Konzept in C ist++. Durch die Verwendung des STL können wir den Standardcode verwenden, um die unterschiedliche Datenstruktur wie Stack, Warteschlange und Linkliste zu erstellen. Wir tätigen auch einige Vorgänge für die Daten wie Suche, Sortieren usw.