Пар је термин који се користи за комбиновање две вредности, које могу бити различитих врста података. Пар нуди технику за држање два различита објекта заједно у складишту. У суштини, користимо га за складиштење туплес . Контејнер за пар је једноставан контејнер који је наведен у заглављу и садржи два елемента података или објекта.
- Редослед је фиксан, а први елемент се назива 'први' а други као 'други' (први, други) .
- Могуће је доделите, копирајте и упоредите пар. Низ објеката додељених на мапи или хеш мапи је подразумевано типа 'пар' , што значи да све од 'први' компоненте су различити кључеви повезани са објектима са својим 'други'
- Ми користимо име променљиве, оператор тачке, реч прва или друга , анд тхе елемент желимо да приступимо.
Синтакса за пар у Ц++:
вечера у односу на време за вечеру
pair Pair_name
Пример:
Програм за упаривање у Ц++;
#include #include using namespace std; int main() { pair PAIR1; PAIR1.first = 200; PAIR1.second = 'J'; cout << PAIR1.first << ' '; cout << PAIR1.second << endl; return 0; }
Излаз
200 J
Иницијализација пара:
Пар се такође може иницијализовати. Можете користити следећу синтаксу да иницијализујете пар.
Синтакса:
pair (data_type1, data_type2) Pair_name (value1, value2) ;
Различити приступи иницијализацији пара:
pair g1; pair g2(1, 'a'); pair g3(1, 10); pair g4(g3);
Марка функција паир(). такође се може користити за иницијализацију пара.
g2 = make_pair(1, 'a');
Декларација пара такође може користити следећу синтаксу:
g2 = {1, 'a'};
Пример:
бинарно стабло против бинарног стабла претраге
#include #include using namespace std; int main() { pair PAIR2('JavaTpoint', 2.23); cout << PAIR2.first << ' '; cout << PAIR2.second << endl; return 0; }
Излаз
JavaTpoint 2.23
Напомена: Ако прва вредност пара није иницијализована, она се аутоматски иницијализује.
Пример:
#include #include using namespace std; int main() { pair PR1; pair PR2; cout << PR1.first; cout << PR1.second; cout << ' '; cout << PR2.first; cout << PR2.second; return 0; }
Излаз
00
Функције чланова
1) маке_паир():
Без експлицитног дефинисања типова, пар вредности се може креирати помоћу ове функције шаблона.
Синтакса:
Pair_name = make_pair (value1,value2);
Пример:
#include #include using namespace std; int main() { pair PAIR1; pair PAIR2('JavaTpoint', 1.23); pair PAIR3; PAIR1.first = 200; PAIR1.second = 'J'; PAIR3 = make_pair('JavaTpoint is super', 4.56); cout << PAIR1.first << ' '; cout << PAIR1.second << endl; cout << PAIR2.first << ' '; cout << PAIR2.second << endl; cout << PAIR3.first << ' '; cout << PAIR3.second << endl; return 0; }
Излаз
200 J JavaTpoint 1.23 JavaTpoint is super 4.56
2) заменити:
Коришћењем ове функције се мењају садржаји два пара објеката. Парови морају припадати истој категорији.
Синтакса:
pair1.swap(pair2) ;
Пример:
јсон из јава објекта
#include #include using namespace std; int main() { pair pair1 = make_pair('P', 1); pair pair2 = make_pair('Q', 2); cout << 'content before swapping: '; cout << 'Contents of pair1 = ' << pair1.first << ' ' << pair1.second; cout << 'Contents of pair2 = ' << pair2.first << ' ' << pair2.second; pair1.swap(pair2); cout << ' content after swapping: '; cout << 'Contents of pair1 = ' << pair1.first << ' ' << pair1.second; cout << 'Contents of pair2 = ' << pair2.first << ' ' << pair2.second; return 0; }
Излаз
content before swapping: Contents of pair1 = P 1Contents of pair2 = Q 2 content after swapping: Contents of pair1 = Q 2Contents of pair2 = P 1
3) кравата():
Ова метода тие() функционише исто као и торке. Да би распаковао тупле (или пар у овом случају) вредности у независне променљиве, он производи а тупле оф лвалуе указује на његове параметре. Ево две варијације кравате, једна са и једна без 'игнорисати' , баш као у торкама. Кључна реч 'игнорисати' спречава да се одређени елемент тупле распакује.
Парови имају само два аргумента, али торке могу имати бројне аргументе. Стога, распакивање треба експлицитно да се позабави у случају парова.
Синтакса:
tie(int &, int &) = pair1;
Пример:
#include using namespace std; int main() { pair pair1 = { 10, 12 }; int p, q; tie(p, q) = pair1; cout << p << ' ' << q << ' '; pair pair2 = { 16, 18 }; tie(p, ignore) = pair2; cout << p << ' ' << q << ' '; pair <int, pair> pair3 = { 16, { 18, 'p' } }; int x, y; char z; x = pair3.first; tie(y, z) = pair3.second; cout << x << ' ' << y << ' ' << z << ' '; } </int,>
Излаз
10 12 16 12 16 18 p