Par je izraz, ki se uporablja za združevanje dveh vrednosti, ki sta lahko različnih vrst podatkov. Par ponuja tehniko za shranjevanje dveh različnih predmetov skupaj. V bistvu ga uporabljamo za shranjevanje tuples . Parni vsebnik je preprost vsebnik, ki je določen v glavi in vsebuje dva podatkovna elementa ali objekta.
- Zaporedje je fiksno in prvi element se imenuje 'prvi' in drugi kot 'drugi' (prvi, drugi) .
- Možno je, da dodelite, kopirajte in primerjajte par. Matrika objektov, dodeljenih na zemljevidu ali zgoščenem zemljevidu, je privzeto tipa 'par' , kar pomeni, da vsi 'prvi' komponente so različni ključi, povezani s predmeti s svojimi 'drugi'
- Uporabljamo ime spremenljivke, operator pike, prva ali druga beseda , in element želimo dostopati.
Sintaksa za par v C++:
pair Pair_name
primer:
Program za par v 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; }
Izhod
200 J
Inicializacija para:
Par je mogoče tudi inicializirati. Za inicializacijo para lahko uporabite naslednjo sintakso.
referenčna spremenljivka v Javi
Sintaksa:
pair (data_type1, data_type2) Pair_name (value1, value2) ;
Različni pristopi k inicializaciji parov:
pair g1; pair g2(1, 'a'); pair g3(1, 10); pair g4(g3);
Znamka funkcija pair(). lahko uporabite tudi za inicializacijo para.
g2 = make_pair(1, 'a');
Izjava o paru lahko uporablja tudi naslednjo sintakso:
g2 = {1, 'a'};
primer:
#include #include using namespace std; int main() { pair PAIR2('JavaTpoint', 2.23); cout << PAIR2.first << ' '; cout << PAIR2.second << endl; return 0; }
Izhod
JavaTpoint 2.23
Opomba: Če prva vrednost para ni inicializirana, se inicializira samodejno.
primer:
#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; }
Izhod
00
Članske funkcije
1) make_pair():
Brez izrecne definicije vrst je mogoče ustvariti par vrednosti s to funkcijo predloge.
Sintaksa:
Pair_name = make_pair (value1,value2);
primer:
#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; }
Izhod
str v int
200 J JavaTpoint 1.23 JavaTpoint is super 4.56
2) zamenjava:
Z uporabo te funkcije se zamenjata vsebini dveh parov objektov. Pari morajo pripadati isti kategoriji.
Sintaksa:
pair1.swap(pair2) ;
primer:
življenjski cikel razvoja programske opreme
#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; }
Izhod
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():
Ta metoda tie() deluje enako kot delujejo tuple. Za razpakiranje vrednosti tuple (ali para v tem primeru) v neodvisne spremenljivke ustvari a tuple od lvalue kazalci na njegove parametre. Tukaj sta dve različici kravate, ena z in ena brez 'ignore' , tako kot v tulpih. Ključna beseda 'ignore' preprečuje razpakiranje določenega elementa tuple.
Pari imajo samo dva argumenta, torke pa imajo lahko številne argumente. Zato je treba razpakiranje izrecno obravnavati v primeru parov.
Sintaksa:
tie(int &, int &) = pair1;
primer:
#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,>
Izhod
10 12 16 12 16 18 p