strings pair tuples stl
Aflați rapid conceptele de bază despre corzi, perechi și tupluri în STL.
În acest tutorial, vom obține cunoștințe de bază despre șiruri, perechi și tupluri în STL, înainte de a trece la conceptele detaliate și mai mari, cum ar fi Iteratori, Algoritmi și Containere.
Deși șirurile sunt utilizate în același mod ca și în limbajul general C ++, merită discutat din punctul de vedere STL. Ne putem gândi la șiruri ca la un container secvențial de caractere. De asemenea, întrucât ne ocupăm de clasele șablon în STL, este absolut imperativ să cunoaștem conceptul de PERE și TUPLE în ceea ce privește STL.
=> Consultați aici tutorialele de instruire în profunzime C ++.
Ce veți învăța:
Corzi în STL
Șirurile din STL acceptă atât formatul ASCII, cât și formatul Unicode (cu caractere largi).
STL acceptă două tipuri de șiruri:
# 1) șir: Acesta este șirul format ASCII și pentru a include acest tip de obiecte șir în program trebuie să includem fișierul string.h în programul nostru.
#include
# 2) wstring: Acesta este șirul cu caractere largi. În programarea MFC, o numim CString. Pentru a include obiecte wstring în programul nostru, includem fișierul xstring.
#include
Indiferent dacă este ASCII sau Unicode, șirurile din STL acceptă diverse metode exact așa cum fac celelalte containere STL.
Unele dintre metodele acceptate de obiectul șir sunt:
- începe() : Întoarceți iteratorul la început.
- Sfârșit() : Întoarceți iteratorul la sfârșit.
- introduce() : Introduceți în șir.
- şterge() : Ștergeți caracterele din șir.
- mărimea() : Returnează lungimea șirului.
- gol() : Goliți conținutul șirului.
În afară de aceste metode menționate mai sus, am acoperit deja metodele claselor de șiruri în șirurile noastre anterioare în tutoriale C ++.
Să scriem un program simplu pentru a demonstra șirurile STL.
întrebări și răspunsuri la interviu cu seleniu pentru o experiență de 4 ani
#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:'< Ieșire:
LUME
Lungimea coardei: 5
În codul de mai sus, așa cum am văzut, declarăm un obiect șir str1 și apoi folosind metoda insert, adăugăm caractere unul câte unul la sfârșitul șirului. Apoi, folosind un obiect iterator, afișăm șirul.
Apoi, vom scoate lungimea șirului folosind metoda dimensiunii. Acesta este un program simplu pentru a demonstra numai șirurile.
PERECHE ÎN STL
Clasa PAIR în STL este utilă în timp ce programați containerele asociative. PAIR este o clasă de șablon care grupează două valori de același tip de date sau de tipuri diferite.
Sintaxa generală este:
pair pair1, pair2;
Linia de cod de mai sus creează două perechi, adică pair1 și pair2. Ambele perechi au primul obiect de tip T1 și al doilea obiect de tip T2.
T1 este primul membru și T2 este al doilea membru al pair1 și pair2.
Următoarele sunt metodele acceptate de clasa PAIR:
- Operator (=): Atribuiți valori unei perechi.
- swap: Schimbă conținutul perechii.
- make_pair (): Creați și returnați o pereche cu obiecte definite de lista de parametri.
- Operatori (==,! =,>,<, = ) : Compară lexicografic două perechi.
Să scriem un program de bază care arată utilizarea acestor funcții în cod.
#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: '< Ieșire:
Pereche1 Primul membru: 1
Pair2 Al doilea membru: SoftwareTestingHelp
Perechile nu sunt egale
În programul de mai sus, creăm două perechi de tip întreg fiecare și o altă pereche de tip întreg și șir. Apoi folosind funcția „make_pair” atribuim valori fiecărei perechi.
Apoi, comparăm pair1 și pair2 folosind operatorul „==” pentru a verifica dacă sunt egale sau nu. Acest program demonstrează funcționarea de bază a clasei PAIR.
Tuple În STL
Conceptul Tuple este o extensie a Pair. În pereche, putem combina două obiecte eterogene, în timp ce în tupluri putem combina trei obiecte eterogene.
Sintaxa generală a unui tuplu este:
tupletuple1;
La fel ca perechea, tuplul acceptă și funcții similare și câteva funcții suplimentare.
Acestea sunt enumerate mai jos:
- Constructor: Pentru a construi un nou tuplu.
- Tuple_element: Returnează tipul elementului tuplu.
- make_tuple (): Creează și returnează un tuplu cu elemente descrise de lista de parametri.
- Operatori (==,! =,>,<, = ): Compară lexicografic două perechi.
- Operator (=): Pentru a atribui valoare unui tuplu.
- swap: Pentru a schimba valoarea a două tupluri.
- Cravată: Legați valorile unui tuplu la referințele sale.
Să folosim unele dintre aceste funcții într-un program pentru a vedea funcționarea lor.
#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; }
Ieșire:
1 Bună ziua C ++ Tuples
În codul de mai sus pentru a demonstra tupluri, creăm două tupluri. Primul tuplu tuplu1 este format din trei valori întregi. Al doilea tuplu, adică tuplul 2 constă dintr-o valoare întreagă și două valori de șir.
cum să adăugați la o matrice de șiruri
Apoi, atribuim valori ambelor tupluri folosind funcția „make_tuple”. Apoi, folosind funcția de apelare „legare”, legăm sau atribuim valorile de la tuplu2 la id și două șiruri.
În cele din urmă, vom scoate aceste valori. Ieșirea arată valorile din tuple2 pe care le-am atribuit id și două șiruri.
Concluzie
Astfel, în acest tutorial, am discutat pe scurt șirurile, perechile și tuplurile utilizate în STL. În timp ce operațiile șirurilor sunt similare cu C ++ general, în plus, putem opera și iteratoare pe aceste șiruri.
Perechile și tuplurile sunt utile la programarea containerelor STL, în special a containerelor asociative.
În viitorul nostru tutorial, vom afla detalii despre algoritmi și iteratori înainte de a trece la programarea STL reală folosind STL.
=> Vizitați aici pentru a vedea seria de formare C ++ pentru toți.
Lectură recomandată