Tupla C++

Tupla C



Lavorare con qualsiasi linguaggio di programmazione richiede l'utilizzo di tuple, elenchi, array e così via. Gli array, gli elenchi e le tuple offrono gli stessi servizi con lievi differenze. Una tupla è un oggetto che contiene un elenco di ordini di elementi. È proprio come un array e un elenco, tuttavia, entrambi sono mutabili, ma la tupla è immutabile. Un oggetto immutabile non può subire modifiche durante l'esecuzione. L'elenco e l'array possono essere facilmente modificati, suddivisi o indicizzati poiché sono modificabili. Ma una tupla non può essere modificata, affettata o cambiata poiché è un oggetto immutabile. Inoltre, l'elenco e l'array possono memorizzare solo un tipo di dati, ma una tupla può avere dati di più tipi. In questa guida, discuteremo la funzione principale di una tupla e come può essere utilizzata in un programma c++.

Che cos'è una tupla in un linguaggio di programmazione C++?

Una tupla in un linguaggio di programmazione c++ è un oggetto che contiene un elenco ordinato di elementi. È un tipo di dati immutabile, il che significa che i valori nella tupla non possono essere modificati in nessun momento dell'esecuzione. Il valore di una tupla è dato tra parentesi tonde () separate da una virgola ed è accessibile dal riferimento dell'indice. Ci sono molte funzioni che possono essere eseguite su una tupla, ad esempio get(), swap(), tuple_size(), e così via. Nelle sezioni successive, spiegheremo il funzionamento delle 4 funzioni con l'aiuto di esempi.

Esempio 1:
In questo esempio creeremo una tupla usando la funzione make_tuple(). make_tuple() viene utilizzato in un programma c++ per assegnare valore a una tupla. I valori che devono essere assegnati alla tupla devono essere nello stesso ordine in cui sono stati dichiarati nella tupla. Vediamo il codice allegato di seguito per capire come funziona la funzione make_tuple() in un programma c++.







Le librerie 'include ' e 'using namespace std' sono incluse nel programma per utilizzare le funzioni di input e output standard come cin e cout. 'include ' consentirà l'uso di una tupla nel programma. Il codice completo è fornito nella funzione main(). Viene dichiarata una tupla 't' con cinque elementi, . I valori per la tupla devono seguire lo stesso ordine. Come puoi osservare, ('a', 75, 5, 'z', 5.5) nella funzione make_tuple() sono nello stesso ordine dei valori dichiarati per la tupla. Dopo aver eseguito questo codice, non riceverai nulla in cambio che indichi che l'esecuzione è riuscita.



#includi
#include
usando spazio dei nomi std ;
int principale ( )
{
tupla < car , int , int , car , galleggiante > t ;
t = make_tupla ( 'un' , 75 , 5 , 'Insieme a' , 5.5 ) ;
Restituzione 0 ;
}



Controlla l'output risultante fornito nello screenshot qui sotto:





Si noti che non viene restituito nulla dal programma. Stampiamo i valori della tupla.



Esempio 2:
In questo esempio, la funzione get() viene utilizzata sulla tupla per visualizzarne i valori. I valori delle tuple possono essere stampati solo con la funzione get() nel linguaggio di programmazione c++. Vedi il codice qui sotto.

Si noti che abbiamo utilizzato lo stesso codice e dati di esempio dell'esempio precedente. Utilizzando la funzione make_tuple(), i valori vengono assegnati correttamente alla tupla. La funzione get() viene utilizzata per accedere ai valori della tupla facendo riferimento al numero di indice a partire da 0. Ogni numero di indice viene assegnato alla funzione get() e tutti i valori della tupla vengono stampati con l'istruzione cout.

#includi
#include
usando spazio dei nomi std ;
int principale ( )
{
tupla < car , int , int , car , galleggiante > t ;
t = make_tupla ( 'un' , 75 , 5 , 'Insieme a' , 5.5 ) ;
int io ;
cout << 'I valori della tupla sono: ' ;
cout << ottenere < 0 > ( t ) << ' ' << ottenere < 1 > ( t ) << ' ' << ottenere < Due > ( t )
<< ' ' << ottenere < 3 > ( t ) << ' ' << ottenere < 4 > ( t ) << fine ;
Restituzione 0 ;
}

Controlla l'output di questo codice nello screenshot riportato di seguito:

La funzione get() stampa i valori nello stesso ordine in cui sono assegnati alla tupla.

Esempio 3:
In questo esempio, dimostreremo il funzionamento della funzione tuple_size(). Con l'aiuto di un esempio di esempio, spiegheremo come ottenere la dimensione di una tupla usando la funzione tuple_size. Controlla il codice riportato di seguito.

Il resto delle righe di codice sono le stesse utilizzate negli esempi precedenti. La funzione tuple_size qui otterrà la dimensione della tupla. Il 'decltype' sta per il tipo dichiarato utilizzato per esaminare il tipo di una determinata espressione.

#includi
#include
usando spazio dei nomi std ;
int principale ( )
{
tupla < car , int , int , car , galleggiante > t ;
t = make_tupla ( 'un' , 75 , 5 , 'Insieme a' , 5.5 ) ;
int io ;
cout << 'La dimensione della tupla è = ' ;
cout << tuple_size < tipo decl ( t ) > :: valore << fine ;
Restituzione 0 ;
}

Quando esegui questo codice, verrà generato il seguente output:

Abbiamo assegnato 5 valori alla tupla e anche la funzione tuple_size() ha restituito la dimensione della tupla 5.

Esempio 4:
Possiamo concatenare le tuple usando la funzione tuple_cat() e creare una nuova tupla da esse. Qui dimostreremo l'uso della funzione tuple_cat() per concatenare due tuple.

Nel codice riportato di seguito, abbiamo dichiarato due tuple t1 e t2 e assegnato 3/3 valori a ciascuna tupla. Quindi, abbiamo usato la funzione tuple_cat() per concatenare entrambe le tuple e creare una nuova tupla da esse. Dopodiché, abbiamo semplicemente stampato i valori di tutte le tuple usando la funzione get(). La funzione tuple_cat() prende le tuple che devono essere concatenate, combina i valori assegnati a ciascuna tupla e ne crea una nuova.

Nota che le tuple t1 e t2 hanno 3/3 valori e abbiamo stampato ogni valore usando la funzione get() facendo riferimento dall'indice 0 all'indice 2. Tuttavia, quando sono concatenati, i valori totali saranno 6. Quindi, abbiamo bisogno per stampare l'indice da 0 a 5 in modo che tutti i valori vengano stampati. Controlla l'output di seguito e nota che 3 valori sono stampati sulla tupla t1; 3 valori vengono stampati sulla tupla 2. Tuttavia, 6 valori vengono stampati sulla tupla 3 poiché i valori concatenati nella nuova tupla sono 6.

#includi
#include
usando spazio dei nomi std ;
int principale ( )
{
tupla < car , int , galleggiante > t1 ( 'un' , 75 , 6.7 ) ;
tupla < int , car , galleggiante > t2 ( 10 , 't' , 77.9 ) ;
auto t3 = tuple_cat ( t1,t2 ) ;
cout << 'La prima tupla contiene =  ' ;
cout << ottenere < 0 > ( t1 ) << ' ' << ottenere < 1 > ( t1 ) << ' ' << ottenere < Due > ( t1 ) << fine << fine ;
cout << 'La seconda tupla contiene =  ' ;
cout << ottenere < 0 > ( t2 ) << ' ' << ottenere < 1 > ( t2 ) << ' ' << ottenere < Due > ( t2 ) << fine << fine ;
cout << 'La nuova tupla è = ' ;
cout << ottenere < 0 > ( t3 ) << ' ' << ottenere < 1 > ( t3 ) << ' ' << ottenere < Due > ( t3 ) << ' '
<< ottenere < 3 > ( t3 ) << ' ' << ottenere < 4 > ( t3 ) << ' ' << ottenere < 5 > ( t3 ) << fine ;
Restituzione 0 ;
}

Ecco l'output:

Conclusione

Questo articolo è una panoramica delle tuple nel linguaggio di programmazione c++. La tupla in c++ è un oggetto immutabile che trasporta contemporaneamente i valori di diversi tipi di dati. Le tuple non possono essere cambiate o modificate in nessun momento dell'esecuzione poiché sono immutabili. Diverse funzioni possono essere eseguite su tuple per ottenere un determinato risultato, 4 di esse sono illustrate in questo articolo con esempi di esempio.