Co je to n-tice?
N-tice je objekt, který pojme řadu prvků. Prvky mohou být různých datových typů. Prvky n-tic jsou inicializovány jako argumenty v pořadí, v jakém k nim bude přistupovat.
Operace na n-tice :-
1. get() :- get() se používá pro přístup k hodnotám n-tice a jejich modifikaci, přijímá index a název n-tice jako argumenty pro přístup k určitému prvku n-tice.
2. make_tuple() :- make_tuple() se používá k přiřazení n-tice s hodnotami. Předané hodnoty by měly být v pořadí s hodnotami deklarovanými v n-tici.
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;> }> |
strojové učení a typy
>
>
Výstup:
The initial values of tuple are : a 10 15.5 The modified values of tuple are : b 10 20.5>
Ve výše uvedeném kódu get() upravuje 1. a 3. hodnotu n-tice.
3. velikost_n-tice :- Vrací počet prvků přítomných v n-tici.
CPP
import skeneru java
//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)>::hodnota<< endl;> >return> 0;> }> |
>
>
Výstup:
The size of tuple is : 3>
4. swap() :- Swap() zamění prvky dvou různých n-tic.
csv soubor číst java
CPP
//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>>tupý2(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;> }> |
>
>
Výstup:
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. kravata() :- Práce tie() spočívá v rozbalení hodnot n-tice do samostatných proměnných. Existují dvě varianty tie(), s funkcí ignore a bez ní, ignore ignoruje konkrétní prvek n-tice a zabrání jeho rozbalení.
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;> }> |
>
návrhové vzory v jazyce Java
>
Výstup:
The unpacked tuple values (without ignore) are : 20 g 17.5 The unpacked tuple values (with ignore) are : 20 17.5>
6. tuple_cat() :- Tato funkce zřetězí dvě n-tice a vrátí novou n-tice.
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>>tupý2(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;> }> |
>
mapa v Javě
>
Výstup:
The new tuple elements in order are : 20 g 17.5 30 f 10.5>