STL in C ++

STL in C ++

La libreria di modelli standard o STL fornisce un'enorme quantità di struttura al programmatore o al programmatore. Se creiamo una libreria, significa che vogliamo archiviare alcuni dati all'interno della libreria.

Per archiviare i dati all'interno della libreria, usiamo per seguire alcuni metodi. STL ci aiuta a creare queste librerie seguendo alcuni metodi.

Componenti STL

STL è composto da tre componenti. Sono:

  1. Contenitore
  2. Iterazione
  3. Algoritmo

Ne discutiamo ciascuno di essi in modo efficiente.

UN. Contenitore

  • Enormi quantità di oggetto sono mantenute nel contenitore in modo corretto.
  • Vari tipi di dati vengono inseriti all'interno del contenitore per archiviare i dati in modo specifico. Ad esempio: array, mappa, elenco collegato, ecc.
  • Questi contenitori hanno un tipo generico. Il termine "generico" è correlato al concetto di modello in C ++ che può contenere gli elementi di eventuali tipi di dati.

Esempio: omesso il colon poiché questa è una sotto-testa.

Diversi tipi di dati sono archiviati in un array dinamicamente in una classe vettoriale. Vector è una classe di categorie di container.

B. Iteratori

  • Gli oggetti sono gestiti in modo sistematico attraverso gli iteratori.
  • Viene utilizzato per indicare i contenitori.
  • In realtà collega i contenitori e gli algoritmi in modo corretto.

Esempio:

Gli argomenti dell'algoritmo Sort () sono l'iteratore di partenza e finale. Questi iteratori ci aiutano a ordinare gli elementi presenti nel contenitore come valori o dati.

C. Algoritmo

  • Atti algoritmo sui contenitori. Attraverso l'algoritmo, eseguiamo i diversi tipi di operazioni come ordinamento, ricerca, inizializzazione dei dati, ecc.
  • Contiene i diversi tipi di funzioni predefinite che aiutano a risolvere molti problemi relativi al programma.

Esempio:

Possiamo invertire i dati con l'aiuto di una funzione predefinita denominata funzione inversa (), ordinare i dati con la funzione ordin (), ecc.

Classi comuni che esistono nei contenitori

  1. Vector agisce su array
  2. Atti della coda sulle code
  3. Stacks agisce sugli stack
  4. Priority_queue agisce su un mucchio
  5. Elenco Atti sull'elenco collegato
  6. Imposta atti sugli alberi
  7. Mappa agisce su array

Classificazione dei contenitori

Esistono 4 contenitori come contenitori associativi non ordinati, adattatori di container, contenitori di sequenza e contenitori associativi.

STL è un concetto vasto in quanto ha molte classi. Discuteremo alcune lezioni importanti in STL.

Vettore:

  1. L'array è una raccolta lineare dei tipi simili di elementi.
  2. Usiamo l'array di intestazione- #include.
  3. Qui, l'array è statico nel tipo.

Esempio di programmazione 1:

#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()

vettore< int, 5 >data_array = 5, 10, 15, 20, 25; // Creazione di un oggetto array;
data_array.riempire (10); // viene utilizzata la funzione membro;
per (int i = 0; i<=7;i++)
cout<< data_array[ i ] ;
restituzione 0;

Produzione:

Esempio di programmazione 2:

#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()

vettore< int, 5 >data_array = 5,10,15,20,25; // Creazione di un oggetto array;
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 ;
restituzione 0;

Produzione:

Spiegazione:

I due programmi precedenti sono l'esempio della classe Array.

Qui, dichiariamo un array. Archiviamo alcuni valori come 5, 10, 15, 20 e 25 all'interno di un array.

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

(), Front (), retro () e riempimento () sono importanti funzioni dei membri utilizzati nel modello di array.

Classi vettoriali in STL

  1. Il contenitore per uso più generale è la classe vettoriale.
  2. Supporta l'array dinamico.

Dichiarazione Tipi di vettori

1. vettoriale v1;

Vettori di lunghezza zero.

2. Vettoriale CV (5);

Crea il 5 Elements Char Vector.

3. vettoriale cv (4, 'a');

Inizializza 4 elementi char vector con "a".

Esempio di programmazione 3:

#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()

vettore v1;
vettore v2 (4);
vettore v3 (5,10);
vettore v4 (3, "ciao");
cout<cout<< v4[1] << endl ;
cout<restituzione 0;

Produzione:

Spiegazione:

Nel programma, dichiariamo i vettori V1, V2, V3 e V4. Assegniamo alcuni valori al momento della dichiarazione all'interno dei vettori V2, V3, V4. Ora, stampiamo i valori di 0, 1 ° e 2 ° indice di V4. Tutti mostrano lo stesso risultato.

Esempio di programmazione 4:

#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()

vettore< int >v1;
cout<< " Current Capacity is " <per (int i = 0; i<= 9; i++)
v1.push_back (10*(i+1));
cout<< " Current capacity is " < v1.pop_back ();
cout<<" after pop \n" ;
cout<< " Current Capacity is "<< v1.capacity() <v1.pop_back ();
cout<< "Current Capacity is "<v1.pop_back ();
cout<< " Current Capacity is " << v1.capacity() <cout<< " total number of elements are " <

Produzione:

Spiegazione:

Qui nel programma, utilizziamo alcune funzioni dei membri. Uno di questi è il push_back che viene utilizzato per aggiungere valore al vettore alla fine.

Un'altra funzione membro è pop_back ().L'ultimo elemento viene rimosso.

Un'altra funzione utilizzata nel programma è la capacità (). Restituisce la capacità del vettore.

L'ultima ma non meno importante è la dimensione () che determina la dimensione dei dati.

Conclusione

Nel concetto di STL, siamo giunti a questa conclusione che STL è un vasto concetto in C++. Utilizzando STL, possiamo utilizzare il codice standard per creare la diversa struttura di dati come stack, coda ed elenco di collegamenti. Facciamo anche alcune operazioni sui dati come la ricerca, l'ordinamento, ecc.