Il termine coppia si riferisce alla combinazione di due valori di diversi tipi. La coppia consente di mantenere due oggetti separati come singola unità. Viene utilizzato principalmente durante la conservazione delle tuple.
Il contenitore della coppia è un contenitore di base dichiarato nell'intestazione dell'utilità che consiste in due dati o oggetti raccolti. Il primo elemento nel contenitore della coppia viene definito "primo", mentre il secondo elemento viene definito "secondo", con l'ordine fisso come (primo, secondo).
Per impostazione predefinita, l'oggetto di un array specificato viene assegnato in una mappa o una mappa hash della coppia di tipo ", con tutti i" primi "elementi che hanno chiavi uniche abbinate ai loro oggetti" Second "Value. Per ottenere gli elementi, utilizziamo il nome della variabile seguito dall'operatore DOT e dalla prima o dalla seconda parola chiave.
In questo articolo, vengono utilizzate coppie C ++ STL. La STL C ++ (Biblioteca di modelli standard) è una potente raccolta di classi di modelli C ++ che forniscono classi e funzioni per scopi generali con modelli
Esempio 1
Inizializzeremo una coppia di tipi di dati simili nel seguente codice C ++. Nel primo passaggio del codice C ++, abbiamo importato tre file, iostream, file di utilità e file STD dello spazio dei nomi nella sezione di intestazione. Il file iostream fornisce l'oggetto flusso di input/output, mentre l'utilità fornisce utilità da domini non collegati. Questo è il codice sulle coppie in C ++, quindi fornisce l'utilità di accoppiamento qui. Quindi, abbiamo lo spazio dei nomi STD per usare le sue classi e funzioni.
Dopo la sezione dell'intestazione, abbiamo chiamato la funzione principale in cui dobbiamo definire una coppia. La coppia ha due tipi di oggetti, uno è di tipo di dati interi e il secondo oggetto è di tipo di dati Char. Abbiamo chiamato quella coppia "mypair". L'INTEGER è considerato come la prima coppia e l'oggetto di tipo char è considerato come la seconda coppia.
Quindi, abbiamo inizializzato questi tipi di oggetti di coppia con un certo valore. Si noti che il nome della coppia viene utilizzato come operatore DOT con il termine primo e secondo per accedere agli elementi della coppia. Nell'ultimo passaggio, abbiamo stampato gli elementi delle coppie con l'istruzione C ++ Cout.
#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()
paioMypair;
Mypair.primo = 5;
Mypair.secondo = 'a';
cout << "pair is :\n";
cout << MyPair.first << " ";
cout << MyPair.second << endl;
restituzione 0;
Il risultato è sotto forma di associato come mostrato nella seguente richiesta di Ubuntu.
Esempio 2
Possiamo anche fare una funzione per coppie in C ++ e inizializzare la coppia in quella funzione. Abbiamo creato del codice per costruire una funzione di produzione di coppie, che puoi vedere di seguito.
In primo luogo, dobbiamo includere i file richiesti nell'intestazione del codice C ++. Possiamo accedere agli oggetti, alle funzioni, alle utility e alle classi richieste attraverso questi file. Gli accoppiamenti vengono quindi dichiarati nella funzione principale. Abbiamo definito tre coppie di nomi variabili come "pailval1", "pailval2" e "payval3" con i diversi tipi di dati degli oggetti. Abbiamo inizializzato questi nomi delle variabili della coppia usando l'operatore DOT con l'ordine "FISRT" e "Second".
Si noti che la variabile accoppiata "coppieval3" non è inizializzata; Abbiamo creato una funzione per questo "pailval3". La funzione è rappresentata come "make_pair" e passa i valori in base al tipo definito. Alla fine, abbiamo stampato questi valori di coppia con il comando Cout, rispettivamente.
#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()
paioPaiaval1;
paioCopival2 ("apirl", 27);
paioPaiaval3;
Paiaval1.primo = 2022;
Paiaval1.secondo = 'y';
Coppieval3 = make_pair ("TomMorrow is Apirl", 28);
cout << PairVal1.first << " ";
cout << PairVal1.second << endl;
cout << PairVal2.first << " ";
cout << PairVal2.second << endl;
cout << PairVal3.first << " ";
cout << PairVal3.second << endl;
restituzione 0;
Puoi vedere che il risultato delle coppie da diversi metodi di inizializzazione fornisce i valori delle coppie allo stesso modo. Il risultato è visto nell'immagine qui sotto.
Esempio 3
Possiamo anche scambiare le coppie usando la funzione di swap in c++. Il codice seguente sta scambiando i valori della coppia. I valori di un oggetto coppia sono scambiati con i valori di un altro oggetto della coppia usando questo metodo. Le coppie dovrebbero contenere lo stesso tipo di dati. Il codice inizia con la sezione di intestazione; Abbiamo importato i tre file di intestazione di C++.
Dopodiché, abbiamo chiamato la funzione principale. Abbiamo due coppie nella funzione principale e i nomi variabili per entrambe queste due coppie sono "P1" e "P2."Queste due coppie sono dello stesso tipo di tipo di dati di" int "e" char ". Abbiamo creato la funzione "make_pairs" contemporaneamente mentre abbiamo creato le coppie. La funzione "make_pair" contiene il valore per queste coppie. Il contenuto degli accoppiamenti è stato quindi stampato utilizzando il comando Cout.
Abbiamo una funzione di swap in cui scambiamo la coppia "P1" con la coppia "P2". Prima con il P2.Primo e lo stesso del P1.Secondo con il P2.Secondi elementi delle coppie specificate.
#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()
paiop1 = make_pair ('z', 26);
paiop2 = make_pair ('y', 25);
cout << "pairs before swapping:\n ";
cout << " p1 = " << p1.first << " "<< p1.second;
cout << " p2 = " << p2.first << " "<< p2.second;
P1.Swap (P2);
cout << "\nPairs after swapping:\n ";
cout << " p1 = " << p1.first << " "
<< p1.second;
cout << " p2 = " << p2.first << " "
<< p2.second;
cout << "\n ";
restituzione 0;
L'output mostra i risultati della coppia prima dello scambio e dopo lo scambio sulla schermata della console in basso.
Esempio 4
Usando la classe C ++ STL Coppia, possiamo ordinare un array dipendente dall'altro. La coppia viene creata scegliendo un elemento da una coppia e un altro dalla seconda coppia. Quindi utilizzare la funzione di smistamento per ordinare i risultati. Abbiamo considerato che il primo membro della coppia dovrebbe creare l'array da cui viene condotto l'ordinamento.
Nel seguente codice, abbiamo una dichiarazione di classe con la parola chiave "modello", il tipo "t" è il parametro passato per la classe modello. Quindi abbiamo creato la funzione come "display", che ha generato un array come arr [] e anche la variabile "num" viene passata nel costruttore della funzione.
Nel blocco di funzione, abbiamo un ciclo per iterali sugli elementi dell'array e visualizza gli elementi dell'array. Un'altra funzione è creata come "SortSecondarr", che ha l'algoritmo di ordinamento per un array "ARR1" e "ARR2" del tipo di dati interi. L'array di coppia è anche dichiarato "coppie_arr []", che ha la variabile "num". Quindi viene invocata la funzione di ordinamento, che ordina la coppia_arr. Il primo elemento di coppia ARR1 è ordinato con gli elementi della coppia di coppia "arr2".
Nella funzione principale, abbiamo inizializzato i valori per l'array di coppia "ARR1" e l'array di coppia "ARR2". Questi array ordinati e l'array delle coppie originali verranno visualizzati utilizzando il comando cout.
#includere
#includere
#includere
Utilizzo dello spazio dei nomi std;
modello
void display (t arr [], int num)
per (int i = 0; i < num; i++)
cout << arr[i]<< " ";
void SortSecondarr (int arr1 [], char arr2 [], int num)
paiocoppia_arr [num];
per (int i = 0; i < num; i++)
coppia_arr [i].Primo = arr1 [i];
coppia_arr [i].secondo = arr2 [i];
sort (coppie_arr, pail_arr + num);
per (int i = 0; i < num; i++)
Arr1 [i] = pail_arr [i].Primo;
Arr2 [i] = pail_arr [i].secondo;
int main ()
int num = 5;
int arr1 [] = 3, 1, 2, 4, 5;
char arr2 [] = 'a', 'b', 'c', 'd', 'e';
cout << "Array before Sorting: "<cout << "Array Arr1 : "; display(Arr1, num);
cout << "\nArray Arr2: "; display(Arr2, num);
SortSecondarr (arr1, arr2, num);
cout << "\n\nArray after Sorting: "<cout << "Array Arr1: "; display(Arr1, num);
cout << "\nArray Arr2: "; display(Arr2, num);
cout << "\n";
Quindi, l'array di coppie viene ordinato e visualizzato sullo schermo del terminale in basso.
Conclusione
Abbiamo concluso il nostro articolo dimostrando le coppie di array in c++. Abbiamo esplorato i diversi modi per inizializzare le coppie in C ++ usando una sintassi diversa. Abbiamo anche usato la funzione di ordinamento per ordinare l'array di coppia in modo efficiente. Tutti i risultati delle coppie in C ++ sono dimostrati nell'esempio e compilati con successo nel compilatore G ++. Speriamo che questo articolo ti abbia aiutato a ottenere una nuova idea del concetto di modelli di coppia e come usarlo in c++.