Paar is een term die wordt gebruikt om twee waarden te combineren, die van verschillende soorten gegevens kunnen zijn. Paar biedt een techniek om twee ongelijksoortige objecten bij elkaar te houden in opslag. In wezen gebruiken we het om op te slaan tupels . Een paarcontainer is een eenvoudige container die in de header wordt gespecificeerd en twee data-elementen of objecten bevat.
- De volgorde ligt vast en het eerste element wordt genoemd 'Eerst' en de tweede als 'tweede' (eerste, tweede) .
- Het is mogelijk om toewijzen, kopiëren en vergelijken een paar. De array met objecten die in een kaart of hash-kaart zijn toegewezen, heeft standaard een type 'paar' , wat betekent dat alle 'Eerst' componenten zijn afzonderlijke sleutels die met hun objecten zijn verbonden 'seconde'
- Wij maken gebruik van de variabelenaam, de puntoperator, het woord eerste of tweede , en de element wij willen toegang.
Syntaxis voor paar in C++:
pair Pair_name
Voorbeeld:
Een programma voor paren in 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; }
Uitvoer
200 J
Initialisatie van paar:
Een paar kan ook worden geïnitialiseerd. U kunt de volgende syntaxis gebruiken om het paar te initialiseren.
Syntaxis:
pair (data_type1, data_type2) Pair_name (value1, value2) ;
Verschillende benaderingen voor paarinitialisatie:
pair g1; pair g2(1, 'a'); pair g3(1, 10); pair g4(g3);
Het merk pair() functie kan ook worden gebruikt om een paar te initialiseren.
g2 = make_pair(1, 'a');
Paarverklaring kan ook de volgende syntaxis gebruiken:
g2 = {1, 'a'};
Voorbeeld:
#include #include using namespace std; int main() { pair PAIR2('JavaTpoint', 2.23); cout << PAIR2.first << ' '; cout << PAIR2.second << endl; return 0; }
Uitvoer
JavaTpoint 2.23
Opmerking: als de eerste waarde van het paar niet is geïnitialiseerd, wordt deze automatisch geïnitialiseerd.
Voorbeeld:
#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; }
Uitvoer
00
Functies van leden
1) make_pair():
karakter java
Zonder de typen expliciet te definiëren, kan met deze sjabloonfunctie een waardepaar worden gemaakt.
Syntaxis:
Pair_name = make_pair (value1,value2);
Voorbeeld:
#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; }
Uitvoer
200 J JavaTpoint 1.23 JavaTpoint is super 4.56
2) ruilen:
Met deze functie wordt de inhoud van twee paarobjecten omgeschakeld. Paren moeten tot dezelfde categorie behoren.
Syntaxis:
pair1.swap(pair2) ;
Voorbeeld:
#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; }
Uitvoer
netwerk en soorten netwerken
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) gelijkspel():
Deze tie()-methode werkt hetzelfde als tupels. Om de tuple (of paar in dit geval) waarden uit te pakken in onafhankelijke variabelen, produceert het a tupel van waarde verwijzingen naar de parameters ervan. Hier zijn twee varianten van de stropdas, één met en één zonder 'negeren' , net als in tupels. Het trefwoord 'negeren' verhindert dat een bepaald tuple-element wordt uitgepakt.
Paren hebben slechts twee argumenten, maar tupels kunnen meerdere argumenten hebben. Bij paren dient het uitpakken daarom expliciet aan de orde te komen.
Syntaxis:
tie(int &, int &) = pair1;
Voorbeeld:
#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,>
Uitvoer
10 12 16 12 16 18 p