Mi az a Tuple a C++ programozási nyelvben?
A c++ programozási nyelvben egy sor olyan objektum, amely az elemek rendezett listáját tartalmazza. Ez egy megváltoztathatatlan adattípus, ami azt jelenti, hogy a sor értékei a végrehajtás egyetlen pontján sem változtathatók meg. A sor értéke kerek () zárójelben van megadva, vesszővel elválasztva, és az index hivatkozásával érhető el. Számos függvényt lehet végrehajtani egy soron, azaz a get(), a swap(), a tuple_size() stb. A további részekben a 4 függvény működését mutatjuk be példák segítségével.
1. példa:
Ebben a példában a make_tuple() függvény használatával hozunk létre egy sort. A make_tuple() a c++ programban arra szolgál, hogy értéket rendeljen egy sorhoz. A leíróhoz hozzárendelendő értékeknek ugyanabban a sorrendben kell lenniük, ahogyan azokat a leíróban deklarálták. Nézzük meg az alábbi mellékelt kódot, hogy megértsük, hogyan működik a make_tuple() függvény egy c++ programban.
Az „include
#include
#include
segítségével névtér std ;
int fő- ( )
{
tuple < char , int , int , char , úszó > t ;
t = make_tuple ( 'a' , 75 , 5 , 'Val vel' , 5.5 ) ;
Visszatérés 0 ;
}
Tekintse meg az alábbi képernyőképen látható eredményt:
Vegye figyelembe, hogy a program nem ad vissza semmit. Nyomtassuk ki a sor értékeit.
2. példa:
Ebben a példában a get() függvényt használjuk a soron az értékek megjelenítésére. A sorok értékei csak a get() függvénnyel nyomtathatók ki a c++ programozási nyelvben. Lásd az alábbi kódot.
Vegye figyelembe, hogy ugyanazt a kódot és mintaadatokat használtuk, mint az előző példában. A make_tuple() függvény használatával az értékek sikeresen hozzá vannak rendelve a sorhoz. A get() függvény a sor értékeinek elérésére szolgál a 0-tól kezdődő indexszámra hivatkozva. Minden indexszámot a get() függvény kap, és a sor összes értéke a cout utasítással kerül kinyomtatásra.
#include#include
segítségével névtér std ;
int fő- ( )
{
tuple < char , int , int , char , úszó > t ;
t = make_tuple ( 'a' , 75 , 5 , 'Val vel' , 5.5 ) ;
int én ;
cout << 'A tuple értékei: ;
cout << kap < 0 > ( t ) << ' ' << kap < 1 > ( t ) << ' ' << kap < két > ( t )
<< ' ' << kap < 3 > ( t ) << ' ' << kap < 4 > ( t ) << endl ;
Visszatérés 0 ;
}
Tekintse meg ennek a kódnak a kimenetét az alábbi képernyőképen:
A get() függvény ugyanabban a sorrendben írja ki az értékeket, ahogyan azok a sorhoz vannak rendelve.
3. példa:
Ebben a példában bemutatjuk a tuple_size() függvény működését. Egy példapélda segítségével elmagyarázzuk, hogyan kaphatjuk meg a tuple_size függvény segítségével egy sor méretét. Nézze meg az alábbi kódot.
A kód többi sora ugyanaz, mint az előző példákban. A tuple_size függvény itt megkapja a tuple méretét. A „decltype” az adott kifejezés típusának vizsgálatára használt deklarált típust jelöli.
#include#include
segítségével névtér std ;
int fő- ( )
{
tuple < char , int , int , char , úszó > t ;
t = make_tuple ( 'a' , 75 , 5 , 'Val vel' , 5.5 ) ;
int én ;
cout << 'A sor mérete = ' ;
cout << tuple_size < decltype ( t ) > :: érték << endl ;
Visszatérés 0 ;
}
Amikor végrehajtja ezt a kódot, a következő kimenet jön létre:
A sorhoz 5 értéket rendeltünk, és a tuple_size() függvény is az 5. sor méretét adta vissza.
4. példa:
A tuple_cat() függvény segítségével összefűzhetjük a sorokat, és létrehozhatunk belőlük egy új sort. Itt bemutatjuk a tuple_cat() függvény használatát két sor összefűzésére.
Az alábbi kódban deklaráltunk két t1 és t2 sorokat, és minden sorhoz 3/3 értéket rendeltünk. Ezután a tuple_cat() függvényt használtuk mindkét sor összefűzésére, és új sor létrehozására belőlük. Ezt követően egyszerűen kiírtuk az összes sor értékét a get() függvény segítségével. A tuple_cat() függvény veszi az összefűzendő sorokat, egyesíti az egyes sorokhoz rendelt értékeket, és létrehoz egy új sort.
Vegye figyelembe, hogy a t1 és t2 sorok 3/3 értékkel rendelkeznek, és mindegyik értéket a get() függvény segítségével nyomtattuk ki, a 0 indexről a 2-es indexre hivatkozva. Ha azonban összefűzzük őket, akkor az összérték 6 lesz. az index kinyomtatásához 0-tól 5-ig, így minden érték kinyomtatásra kerül. Nézze meg az alábbi kimenetet, és vegye figyelembe, hogy 3 érték van nyomtatva a t1 soron; A 2. sorra 3 érték kerül kinyomtatásra. A 3. sorból azonban 6 érték kerül kinyomtatásra, mivel az új sor összefűzött értékei 6.
#include#include
segítségével névtér std ;
int fő- ( )
{
tuple < char , int , úszó > t1 ( 'a' , 75 , 6.7 ) ;
tuple < int , char , úszó > t2 ( 10 , 't' , 77.9 ) ;
auto t3 = tuple_cat ( t1,t2 ) ;
cout << 'Az első sor tartalmazza: = ' ;
cout << kap < 0 > ( t1 ) << ' ' << kap < 1 > ( t1 ) << ' ' << kap < két > ( t1 ) << endl << endl ;
cout << 'A második sor tartalmaz = ' ;
cout << kap < 0 > ( t2 ) << ' ' << kap < 1 > ( t2 ) << ' ' << kap < két > ( t2 ) << endl << endl ;
cout << 'Az új sor = ' ;
cout << kap < 0 > ( t3 ) << ' ' << kap < 1 > ( t3 ) << ' ' << kap < két > ( t3 ) << ' '
<< kap < 3 > ( t3 ) << ' ' << kap < 4 > ( t3 ) << ' ' << kap < 5 > ( t3 ) << endl ;
Visszatérés 0 ;
}
Íme a kimenet:
Következtetés
Ez a cikk áttekintést nyújt a c++ programozási nyelv sorairól. A c++-ban lévő tuple egy megváltoztathatatlan objektum, amely egyidejűleg különböző adattípusok értékeit hordozza. A sorok nem módosíthatók vagy módosíthatók a végrehajtás egyetlen pontján sem, mivel megváltoztathatatlanok. Több funkció is végrehajtható a sorokon egy bizonyos eredmény elérése érdekében, ezek közül 4-et ebben a cikkben példákkal mutatunk be.