standard template library
O prezentare completă a bibliotecii de șabloane standard (STL):
Biblioteca de șabloane standard (STL) a C ++ este o colecție de clase de șabloane care furnizează structuri de date cum ar fi matrici, vectori, coadă etc. STL este o bibliotecă formată din containere, algoritmi și iteratori.
Deoarece STL constă dintr-o colecție de clase de șabloane, este o bibliotecă generalizată, care este independentă de tipurile de date.
=> Citiți aici seria de tutoriale extinse de formare C ++.
Ce veți învăța:
Servicii web întrebări de interviu .net
Componentele STL
STL constă în principal din următoarele componente care sunt menționate mai jos:
# 1) Containere
Un container este o colecție de obiecte ale unui anumit tip de structură de date. În STL, avem diferite tipuri de clase de containere precum Array, vector, coadă, deque, listă, hartă, set etc. Aceste containere sunt de natură generică și sunt implementate ca șabloane de clasă.
Containerele au o natură dinamică și pot fi utilizate pentru a ține diferite tipuri de obiecte.
# 2) Algoritmi
Algoritmii sunt metodele sau funcțiile care acționează asupra containerelor. Prin utilizarea algoritmilor furnizați de STL, putem avea metode de căutare, sortare, modificare, transformare sau inițializare a conținutului obiectelor din clasa container.
Algoritmii furnizați de STL au funcții încorporate care pot opera direct pe structuri complexe de date în loc să fie nevoiți să scriem algoritmii noi înșine.
De exemplu, funcția reverse () din STL poate fi utilizată pentru a inversa lista legată.
# 3) Iteratori
Iteratorii sunt caracteristica foarte importantă și distinctivă a STL. Iteratorii sunt construcțiile care sunt folosite pentru a traversa obiectele containerului. Similar cu indexurile pe care le folosim pentru a parcurge matricele, Iteratorii acționează asupra obiectelor din clasa container și pot fi folosite pentru a parcurge datele.
cum să ștergeți elementul din matricea java
Containere
Containerele stochează obiecte și date. Acestea sunt practic clase generice bazate pe șabloane.
Containerele din STL sunt împărțite în următoarele tipuri:
# 1) Containere secvențiale
Containerele care pot fi accesate într-o manieră secvențială sau liniară se spune că sunt containere secvențiale.
Matrici, vectori, liste, deque sunt containerele STL care stochează date liniar și pot fi accesate într-o manieră secvențială.
# 2) Containere asociative
Containerele asociative sunt containere care implementează structuri de date sortate. Aceste containere sunt rapid de căutat. Unele dintre Exemple de containere asociative sunt Map, Set, MultiMap, Multiset, etc. Aceste containere sunt de obicei implementate într-un mod pereche cheie / valoare.
# 3) Adoptori de containere
Adoptoarele de containere sunt containere secvențiale, cu toate acestea, acestea sunt implementate prin furnizarea unei interfețe diferite. Astfel, containerele cum ar fi o coadă, deque, stivă și prioritate-coadă sunt toate clasificate ca adoptatoare de containere.
Iteratori
Iteratorii sunt construcții pe care le folosim pentru a traversa sau a păși prin containere în STL. Iteratorii sunt foarte importanți în STL, deoarece acționează ca o punte între algoritmi și containere. Iteratorii indică întotdeauna spre containere și, de fapt, algoritmii, de fapt, operează pe iteratori și niciodată direct pe containere.
Iteratorii sunt de următoarele tipuri:
- Iteratori de intrare: Cel mai simplu și este utilizat mai ales în algoritmi cu o singură trecere.
- Iteratori de ieșire: La fel ca iteratorii de intrare, dar nu utilizați pentru traversare.
- Iteratori bidirecționali: Acești iteratori se pot deplasa în ambele direcții.
- Iteratori înainte: Poate fi folosit numai în direcția înainte, pas cu pas.
- Iteratori cu acces aleatoriu: La fel ca indicii. Poate fi folosit pentru a accesa orice element în mod aleatoriu.
Algoritmi
Algoritmii sunt un set de funcții sau metode furnizate de STL care acționează asupra containerelor. Acestea sunt funcții încorporate și pot fi utilizate direct cu containerele și iteratoarele STL în loc să scrie proprii algoritmi.
STL acceptă următoarele tipuri de algoritmi:
- Căutare algoritmi
- Algoritmi de sortare
- Modificarea sau manipularea algoritmilor
- Algoritmi nemodificatori
- Algoritmi numerici
- Algoritmi min / max
După cum sugerează fiecare dintre tipurile de algoritmi, acești algoritmi pot fi utilizați pentru a obține funcționalități diferite în containerele STL precum căutarea, sortarea, transformarea datelor din containere, găsirea valorii min / max etc.
Concluzie
Aceasta este scurta introducere a Bibliotecii de șabloane standard. În tutorialele noastre viitoare, vom afla mai multe despre fiecare dintre containere, algoritmi și iteratori.
=> Verificați aici seria completă de antrenament GRATUIT C ++.