logo

TUPLS C ++

Tuple ir objekts, kas var turēt vairākus elementus. Elementi var būt dažādi datu tipi. Mācību elementi tiek inicializēti kā argumenti, lai tiem piekļūtu.  Tīpi ir daudzpusīga datu struktūra vērtību grupēšanas struktūrai. Lai saprastu, kā izmantot TUples C ++ un to lietojumprogrammās C ++ kurss Nodrošina visaptverošas apmācības un piemērus.

Operācijas uz tuple

1. get (): get () tiek izmantots, lai piekļūtu tuple vērtībām, un modificētu tās, tas pieņem indeksu un TUPLE vārdu kā argumentus, lai piekļūtu noteiktam Tuple elementam. 



2. Make_tuple (): Make_Tuple () tiek izmantots, lai piešķirtu tuple ar vērtībām. Piedāvātajām vērtībām jābūt kārtībā ar vērtībām, kas deklarētas TUPLE. 

CPP
#include    #include  using namespace std; int main() {    // Declaring tuple  tuple<char int float> geek;  // Assigning values to tuple using make_tuple()  geek = make_tuple('a' 10 15.5);  // Printing initial tuple values using get()  cout << 'The initial values of tuple are: ';  cout << get<0>(geek) << ' ' << get<1>(geek);  cout << ' ' << get<2>(geek) << endl;  // Use of get() to change values of tuple  get<0>(geek) = 'b';  get<2>(geek) = 20.5;  // Printing modified tuple values  cout << 'The modified values of tuple are: ';  cout << get<0>(geek) << ' ' << get<1>(geek);  cout << ' ' << get<2>(geek) << endl;  return 0; } 

Izvade
The initial values of tuple are: a 10 15.5 The modified values of tuple are: b 10 20.5 

Paskaidrojums : Iepriekš minētajā kodā Get () maina TUple 1. un 3. vērtību. 

3. tuple_size: Tas atgriežas tuplā esošo elementu skaitā. 



CPP
#include    #include  using namespace std; int main() {    // Initializing tuple  tuple<char int float> geek(20 'g' 17.5);  // Use of size to find tuple_size of tuple  cout << 'The size of tuple is: ';  cout << tuple_size<decltype(geek)>::value;  return 0; } 

Izvade
The size of tuple is: 3

4. SWAP (): Swap () apmainās ar divu dažādu kuplu elementiem.

CPP
#include    #include  using namespace std; int main() {    // Initializing 1st tuple  tuple<int char float> tup1(20 'g' 17.5);  // Initializing 2nd tuple  tuple<int char float> tup2(10 'f' 15.5);  // Printing 1st and 2nd tuple before swapping  cout << 'The first tuple elements before swapping are: ';  cout << get<0>(tup1) << ' ' << get<1>(tup1) << ' ' << get<2>(tup1) << endl;  cout << 'The second tuple elements before swapping are: ';  cout << get<0>(tup2) << ' ' << get<1>(tup2) << ' ' << get<2>(tup2) << endl;  // Swapping tup1 values with tup2  tup1.swap(tup2);  // Printing 1st and 2nd tuple after swapping  cout << 'The first tuple elements after swapping are: ';  cout << get<0>(tup1) << ' ' << get<1>(tup1) << ' ' << get<2>(tup1) << endl;  cout << 'The second tuple elements after swapping are: ';  cout << get<0>(tup2) << ' ' << get<1>(tup2) << ' ' << get<2>(tup2) << endl;  return 0; } 


Izvade

The first tuple elements before swapping are: 20 g 17.5  
The second tuple elements before swapping are: 10 f 15.5
The first tuple elements after swapping are: 10 f 15.5
The second tuple elements after swapping are: 20 g 17.5

5. kaklasaite () : TIE () darbs ir izpakot vērtības atsevišķos mainīgos. Ir divi kaklasaites () varianti ar un bez “ignorēt” “ignorēt” ignorē noteiktu tuple elementu un neļauj tam kļūt neizpildītam.



CPP
#include    #include  // for tie() and tuple using namespace std; int main() {   // Initializing variables for unpacking  int i_val;  char ch_val;  float f_val;     // Initializing tuple  tuple<int char float> tup1(20 'g' 17.5);  // Use of tie() without ignore  tie(i_val ch_val f_val) = tup1;    // Displaying unpacked tuple elements without ignore  cout << 'The unpacked tuple values (without ignore) are: ';  cout << i_val << ' ' << ch_val << ' ' << f_val;  cout << endl;    // Use of tie() with ignore  // ignores char value  tie(i_val ignore f_val) = tup1;    // Displaying unpacked tuple elements with ignore  cout << 'The unpacked tuple values (with ignore) are: ';  cout << i_val << ' ' << f_val;  cout << endl;  return 0; } 

Izvade
The unpacked tuple values (without ignore) are: 20 g 17.5 The unpacked tuple values (with ignore) are: 20 17.5 

6. Tuple_cat (): Šī funkcija saslimst ar diviem jauniem un atgriež jaunu tuplu. 

CPP
#include    #include  // for tuple_cat() and tuple using namespace std; int main() {  // Initializing 1st tuple  tuple<int char float> tup1(20 'g' 17.5);  // Initializing 2nd tuple  tuple<int char float> tup2(30 'f' 10.5);    // Concatenating 2 tuples to return a new tuple  auto tup3 = tuple_cat(tup1 tup2);    // Displaying new tuple elements  cout << 'The new tuple elements in order are: ';  cout << get<0>(tup3) << ' ' << get<1>(tup3) << ' '   << get<2>(tup3) << ' ' << get<3>(tup3) << ' '   << get<4>(tup3) << ' ' << get<5>(tup3) << endl;  return 0; } 

Izvade
The new tuple elements in order are: 20 g 17.5 30 f 10.5