Cos'è una tupla?
Una tupla è un oggetto che può contenere un numero di elementi. Gli elementi possono essere di diversi tipi di dati. Gli elementi delle tuple vengono inizializzati come argomenti nell'ordine in cui verranno accessibili.
Operazioni sulla tupla :-
1. ottieni() :- get() viene utilizzato per accedere ai valori della tupla e modificarli, accetta l'indice e il nome della tupla come argomenti per accedere a un particolare elemento della tupla.
2. make_tuple() :- make_tuple() viene utilizzato per assegnare valori alla tupla. I valori passati dovrebbero essere in ordine con i valori dichiarati nella tupla.
CPP
// C++ code to demonstrate tuple, get() and make_pair()> #include> #include // for tuple> 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(geek) << ' ' << get(geek);> >cout << ' ' << get(geek) << endl;> >// Use of get() to change values of tuple> >get(geek) =>'b'>;> >get(geek) = 20.5;> >// Printing modified tuple values> >cout << 'The modified values of tuple are : ';> >cout << get(geek) << ' ' << get(geek);> >cout << ' ' << get(geek) << endl;> >return> 0;> }> |
attraversamento degli ordini per corrispondenza dell'albero binario
>
>
Produzione:
The initial values of tuple are : a 10 15.5 The modified values of tuple are : b 10 20.5>
Nel codice sopra, get() modifica il primo e il terzo valore della tupla.
3. dimensione_tupla :- Restituisce il numero di elementi presenti nella tupla.
CPP
java lungo fino a int
//C++ code to demonstrate tuple_size> #include> #include // for tuple_size and tuple> 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)>::valore<< endl;> >return> 0;> }> |
>
>
Produzione:
The size of tuple is : 3>
4. scambia() :- Lo swap() scambia gli elementi delle due diverse tuple.
CPP
mylivecricket in
//C++ code to demonstrate swap()> #include> #include // for swap() 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>>smussato2(10,>'f'>,15.5);> > >// Printing 1st and 2nd tuple before swapping> >cout << 'The first tuple elements before swapping are : ';> >cout << get(tup1) << ' ' << get(tup1) << ' '> ><< get(tup1) << endl;> >cout << 'The second tuple elements before swapping are : ';> >cout << get(tup2) << ' ' << get(tup2) << ' '> ><< get(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(tup1) << ' ' << get(tup1) << ' '> ><< get(tup1) << endl;> >cout << 'The second tuple elements after swapping are : ';> >cout << get(tup2) << ' ' << get(tup2) << ' '> ><< get(tup2) << endl;> >return> 0;> }> |
>
>
Produzione:
stringa java contiene
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. cravatta() :- Il lavoro di tie() è scompattare i valori della tupla in variabili separate. Esistono due varianti di tie(), con e senza ignore , ignore ignora un particolare elemento tupla e ne impedisce la decompressione.
CPP
// C++ code to demonstrate working of tie()> #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;> }> |
>
>
Produzione:
The unpacked tuple values (without ignore) are : 20 g 17.5 The unpacked tuple values (with ignore) are : 20 17.5>
6. tuple_cat() :- Questa funzione concatena due tuple e restituisce una nuova tupla.
CPP
// C++ code to demonstrate working of tuple_cat()> #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>>smussato2(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(tup3) << ' ' << get(tup3) << ' ';> >cout << get(tup3) << ' ' << get(tup3) << ' ';> >cout << get(tup3) << ' ' << get(tup3) << endl;> >return> 0;> }> |
costante Java
>
>
Produzione:
The new tuple elements in order are : 20 g 17.5 30 f 10.5>