logo

Твойки в C ++

Квойът е обект, който може да побере редица елементи. Елементите могат да бъдат от различни типове данни. Елементите на кортежите се инициализират като аргументи, в които ще бъдат достъпни.  Твойките са универсална структура на данни за групиране на стойности. За да разберете как да използвате кортежи в C ++ и техните приложения C ++ курс Предоставя изчерпателни уроци и примери.

Операции на Tuple

1. Get (): get () се използва за достъп до стойностите на корпуса и модифицирането им, той приема името на индекса и корпуса като аргументи за достъп до определен елемент на кортеж. 



2. make_tuple (): Make_tuple () се използва за присвояване на Tuple със стойности. Предадените стойности трябва да са в ред със стойностите, декларирани в 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; } 

Изход
The initial values of tuple are: a 10 15.5 The modified values of tuple are: b 10 20.5 

Обяснение : В горния код get () променя 1 -вата и 3 -та стойност на tuple. 

3. tuple_size: Връща броя на елементите, присъстващи в корпуса. 



оператори if else java
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; } 

Изход
The size of tuple is: 3

4. swap (): Смяната () разменя елементите на двете различни кортежи.

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; } 


Изход

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. TIE () : Работата на TIE () е да разопаковате стойностите на корпуса в отделни променливи. Има два варианта на TIE () с и без „игнорирайте“ „игнорирането“ игнорира определен елемент на кортеж и го спира да се разопакова.



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; } 

Изход
The unpacked tuple values (without ignore) are: 20 g 17.5 The unpacked tuple values (with ignore) are: 20 17.5 

6. tuple_cat (): Тази функция свързва две кортежи и връща нов кортеж. 

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; } 

Изход
The new tuple elements in order are: 20 g 17.5 30 f 10.5