C++ Tuple

C Tuple



At arbejde med et hvilket som helst programmeringssprog kræver brug af tupler, lister, arrays osv. Arrays, lister og tupler tilbyder de samme tjenester med små forskelle. En tupel er et objekt, der rummer en ordreliste over varer. Det er ligesom et array og en liste, men de er begge foranderlige, men tuple er uforanderlig. Et uforanderligt objekt kan ikke undergå nogen ændringer under udførelsen. Listen og arrayet kan nemt ændres, skæres i skiver eller indekseres, da de kan ændres. Men en tupel kan ikke modificeres, skæres i skiver eller ændres, da den er et uforanderligt objekt. Desuden kan listen og arrayet kun gemme én type data, men en tuple kan have data af flere typer. I denne guide vil vi diskutere hovedfunktionen af ​​en tuple, og hvordan den kan bruges i et c++ program.

Hvad er en Tuple i et C++ programmeringssprog?

En tuple i et c++ programmeringssprog er et objekt, der indeholder en ordnet liste over elementer. Det er en uforanderlig datatype, hvilket betyder, at værdierne i tuplen ikke kan ændres på noget tidspunkt for udførelse. Værdien for en tupel er angivet i de runde () parenteser adskilt af et komma og kan tilgås ved hjælp af indeksets reference. Der er mange funktioner, der kan udføres på en tupel, dvs. get(), swap(), tuple_size() osv. I de yderligere afsnit vil vi forklare, hvordan de 4 funktioner fungerer ved hjælp af eksempler.

Eksempel 1:
I dette eksempel vil vi oprette en tuple ved at bruge make_tuple()-funktionen. Make_tuple() bruges i et c++ program til at tildele værdi til en tuple. De værdier, der skal tildeles til tuplet, skal være i samme rækkefølge, som de blev erklæret i tuple. Lad os se den vedhæftede kode nedenfor for at forstå, hvordan make_tuple()-funktionen fungerer i et c++-program.







Bibliotekerne 'include ' og 'using namespace std' er inkluderet i programmet for at bruge standard input- og outputfunktioner som cin og cout. 'Inkluder ' vil tillade brugen af ​​en tuple i programmet. Den komplette kode findes i main()-funktionen. En tupel 't' erklæres med fem elementer, . Værdierne for tuple skal følge samme rækkefølge. Som du kan se, er ('a', 75, 5, 'z', 5.5) i make_tuple()-funktionen i samme rækkefølge som værdierne erklæret for tuple. Efter at have udført denne kode, får du intet til gengæld, der indikerer, at eksekveringen er vellykket.



#include
#inkluder
ved brug af navneområde std ;
int vigtigste ( )
{
tupel < char , int , int , char , flyde > t ;
t = make_tuple ( 'en' , 75 , 5 , 'Med' , 5.5 ) ;
Vend tilbage 0 ;
}



Tjek det resulterende output givet i skærmbilledet nedenfor:





Bemærk, at der ikke returneres noget af programmet. Lad os udskrive tupleværdierne.



Eksempel 2:
I dette eksempel bruges get()-funktionen på tuplen til at vise dens værdier. Værdierne af tuples kan kun udskrives med funktionen get() i programmeringssproget c++. Se koden nedenfor.

Bemærk, at vi brugte den samme kode og eksempeldata, som vi gjorde i det foregående eksempel. Ved at bruge funktionen make_tuple() tildeles værdierne succesfuldt til tuplen. Get()-funktionen bruges til at få adgang til værdierne af tuple ved at referere til indeksnummeret startende fra 0. Hvert indeksnummer gives til get()-funktionen, og alle værdier af tuple udskrives med cout-sætningen.

#include
#inkluder
ved brug af navneområde std ;
int vigtigste ( )
{
tupel < char , int , int , char , flyde > t ;
t = make_tuple ( 'en' , 75 , 5 , 'Med' , 5.5 ) ;
int jeg ;
cout << 'Værdierne for tuple er:' ;
cout << < 0 > ( t ) << ' ' << < 1 > ( t ) << ' ' << < to > ( t )
<< ' ' << < 3 > ( t ) << ' ' << < 4 > ( t ) << endl ;
Vend tilbage 0 ;
}

Tjek outputtet af denne kode på skærmbilledet nedenfor:

Get()-funktionen udskriver værdierne i samme rækkefølge, som de er tildelt til tuple.

Eksempel 3:
I dette eksempel vil vi demonstrere funktionen af ​​tuple_size()-funktionen. Ved hjælp af et eksempel vil vi forklare, hvordan man får størrelsen på en tupel ved at bruge funktionen tuple_size. Tjek koden nedenfor.

Resten af ​​kodelinjerne er de samme som brugt i tidligere eksempler. Funktionen tuple_size her vil få størrelsen på tuple. 'Decltype' står for den deklarerede type, der bruges til at undersøge typen af ​​givet udtryk.

#include
#inkluder
ved brug af navneområde std ;
int vigtigste ( )
{
tupel < char , int , int , char , flyde > t ;
t = make_tuple ( 'en' , 75 , 5 , 'Med' , 5.5 ) ;
int jeg ;
cout << 'Størrelsen på tupel er = ' ;
cout << tuple_size < decltype ( t ) > :: værdi << endl ;
Vend tilbage 0 ;
}

Når du udfører denne kode, genereres følgende output:

Vi tildelte 5 værdier til tuple og tuple_size()-funktionen returnerede også størrelsen af ​​tuple 5.

Eksempel 4:
Vi kan sammenkæde tuplerne ved at bruge tuple_cat()-funktionen og oprette en ny tuple fra dem. Her vil vi demonstrere brugen af ​​tuple_cat()-funktionen til at sammenkæde to tupler.

I koden nedenfor erklærede vi to tuples t1 og t2 og tildelte 3/3 værdier til hver tuple. Derefter brugte vi tuple_cat()-funktionen til at sammenkæde begge tuples og skabe en ny tuple ud af dem. Derefter udskrev vi simpelthen værdierne for alle tuples ved hjælp af get()-funktionen. Funktionen tuple_cat() tager de tuples, der skal sammenkædes, kombinerer de værdier, der er tildelt hver tuple, og skaber en ny tuple ud af den.

Bemærk, at tuplerne t1 og t2 har 3/3 værdier, og vi udskrev hver værdi ved hjælp af get()-funktionen ved at referere fra indeks 0 til indeks 2. Men når de er sammenkædet, vil de samlede værdier være 6. Så vi har brug for at udskrive indekset fra 0 til 5, så alle værdier bliver udskrevet. Tjek outputtet nedenfor og bemærk, at 3 værdier er trykt på tuple t1; Der udskrives 3 værdier på tuple 2. Der udskrives dog 6 værdier af tuple 3, da de sammenkædede værdier i den nye tuple er 6.

#include
#inkluder
ved brug af navneområde std ;
int vigtigste ( )
{
tupel < char , int , flyde > t1 ( 'en' , 75 , 6.7 ) ;
tupel < int , char , flyde > t2 ( 10 , 't' , 77,9 ) ;
auto t3 = tuple_cat ( t1,t2 ) ;
cout << 'Den første tupel indeholder =  ' ;
cout << < 0 > ( t1 ) << ' ' << < 1 > ( t1 ) << ' ' << < to > ( t1 ) << endl << endl ;
cout << 'Den anden tupel indeholder =  ' ;
cout << < 0 > ( t2 ) << ' ' << < 1 > ( t2 ) << ' ' << < to > ( t2 ) << endl << endl ;
cout << 'Den nye tuple er = ' ;
cout << < 0 > ( t3 ) << ' ' << < 1 > ( t3 ) << ' ' << < to > ( t3 ) << ' '
<< < 3 > ( t3 ) << ' ' << < 4 > ( t3 ) << ' ' << < 5 > ( t3 ) << endl ;
Vend tilbage 0 ;
}

Her er outputtet:

Konklusion

Denne artikel er en oversigt over tuples i programmeringssproget c++. Tuplet i c++ er et uforanderligt objekt, som bærer værdierne af forskellige datatyper på samme tid. Tuplerne kan ikke ændres eller modificeres på noget tidspunkt, da de er uforanderlige. Flere funktioner kan udføres på tupler for at opnå et bestemt resultat, 4 af dem er demonstreret i denne artikel med eksempler.