Par je izraz koji se koristi za kombiniranje dviju vrijednosti, koje mogu biti različitih vrsta podataka. Par nudi tehniku držanja dva različita predmeta zajedno u skladištu. U biti, koristimo ga za skladištenje tuples . Spremnik u paru je jednostavan spremnik koji je naveden u zaglavlju i sadrži dva podatkovna elementa ili objekta.
- Niz je fiksan, a prvi element se naziva 'prvi' a drugi kao 'drugi' (prvi, drugi) .
- Moguće je da se dodijeliti, kopirati i usporediti par. Niz objekata dodijeljenih u karti ili hash karti prema zadanim je postavkama vrste 'par' , što znači da svi 'prvi' komponente su različiti ključevi povezani s objektima svojim 'drugi'
- Koristimo se naziv varijable, operator točka, riječ prvi ili drugi , i element želimo pristupiti.
Sintaksa za par u C++:
pair Pair_name
Primjer:
Program za par u C++;
#include #include using namespace std; int main() { pair PAIR1; PAIR1.first = 200; PAIR1.second = 'J'; cout << PAIR1.first << ' '; cout << PAIR1.second << endl; return 0; }
Izlaz
200 J
Inicijalizacija para:
Par se također može inicijalizirati. Možete koristiti sljedeću sintaksu za inicijalizaciju para.
Sintaksa:
pair (data_type1, data_type2) Pair_name (value1, value2) ;
Različiti pristupi inicijalizaciji para:
pair g1; pair g2(1, 'a'); pair g3(1, 10); pair g4(g3);
Marka pair() funkcija također se može koristiti za inicijalizaciju para.
kako zatvoriti način rada za programere
g2 = make_pair(1, 'a');
Deklaracija para također može koristiti sljedeću sintaksu:
g2 = {1, 'a'};
Primjer:
#include #include using namespace std; int main() { pair PAIR2('JavaTpoint', 2.23); cout << PAIR2.first << ' '; cout << PAIR2.second << endl; return 0; }
Izlaz
JavaTpoint 2.23
Napomena: Ako prva vrijednost para nije inicijalizirana, inicijalizira se automatski.
Primjer:
#include #include using namespace std; int main() { pair PR1; pair PR2; cout << PR1.first; cout << PR1.second; cout << ' '; cout << PR2.first; cout << PR2.second; return 0; }
Izlaz
brojevi za abecedu
00
Članske funkcije
1) make_pair():
Bez eksplicitnog definiranja tipova, par vrijednosti može se stvoriti pomoću ove funkcije predloška.
Sintaksa:
Pair_name = make_pair (value1,value2);
Primjer:
#include #include using namespace std; int main() { pair PAIR1; pair PAIR2('JavaTpoint', 1.23); pair PAIR3; PAIR1.first = 200; PAIR1.second = 'J'; PAIR3 = make_pair('JavaTpoint is super', 4.56); cout << PAIR1.first << ' '; cout << PAIR1.second << endl; cout << PAIR2.first << ' '; cout << PAIR2.second << endl; cout << PAIR3.first << ' '; cout << PAIR3.second << endl; return 0; }
Izlaz
200 J JavaTpoint 1.23 JavaTpoint is super 4.56
2) zamijeniti:
Pomoću ove funkcije izmjenjuju se sadržaji dva para objekata. Parovi moraju pripadati istoj kategoriji.
Sintaksa:
pair1.swap(pair2) ;
Primjer:
globalna promjenljiva u js
#include #include using namespace std; int main() { pair pair1 = make_pair('P', 1); pair pair2 = make_pair('Q', 2); cout << 'content before swapping: '; cout << 'Contents of pair1 = ' << pair1.first << ' ' << pair1.second; cout << 'Contents of pair2 = ' << pair2.first << ' ' << pair2.second; pair1.swap(pair2); cout << ' content after swapping: '; cout << 'Contents of pair1 = ' << pair1.first << ' ' << pair1.second; cout << 'Contents of pair2 = ' << pair2.first << ' ' << pair2.second; return 0; }
Izlaz
content before swapping: Contents of pair1 = P 1Contents of pair2 = Q 2 content after swapping: Contents of pair1 = Q 2Contents of pair2 = P 1
3) kravata():
Ova metoda tie() radi isto kao i torke. Za raspakiranje vrijednosti torke (ili para u ovom slučaju) u nezavisne varijable, proizvodi a tuple od lvrijednost pokazivače na njegove parametre. Ovdje su dvije varijante kravate, jedna s i jedna bez 'zanemariti' , baš kao u torkama. Ključna riječ 'zanemariti' sprječava raspakiranje određenog elementa tuple.
Parovi imaju samo dva argumenta, ali torke mogu imati brojne argumente. Stoga se raspakiranjem treba izričito pozabaviti u slučaju parova.
Sintaksa:
tie(int &, int &) = pair1;
Primjer:
#include using namespace std; int main() { pair pair1 = { 10, 12 }; int p, q; tie(p, q) = pair1; cout << p << ' ' << q << ' '; pair pair2 = { 16, 18 }; tie(p, ignore) = pair2; cout << p << ' ' << q << ' '; pair <int, pair> pair3 = { 16, { 18, 'p' } }; int x, y; char z; x = pair3.first; tie(y, z) = pair3.second; cout << x << ' ' << y << ' ' << z << ' '; } </int,>
Izlaz
10 12 16 12 16 18 p