logo

PAR V C++

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 << '
&apos;; pair <int, pair> pair3 = { 16, { 18, &apos;p&apos; } }; int x, y; char z; x = pair3.first; tie(y, z) = pair3.second; cout &lt;&lt; x &lt;&lt; &apos; &apos; &lt;&lt; y &lt;&lt; &apos; &apos; &lt;&lt; z &lt;&lt; &apos;
&apos;; } </int,>

Izhod

 10 12 16 12 16 18 p