Пара це термін, який використовується для поєднання двох значень, які можуть мати різні типи даних. Пара пропонує техніку зберігання двох різнорідних об’єктів разом. По суті, ми використовуємо його для зберігання кортежі . Парний контейнер — це звичайний контейнер, указаний у заголовку та містить два елементи даних або об’єкти.
- Послідовність фіксована, і перший елемент називається 'перший' а другий як 'second' (перший, другий) .
- Це можливо призначати, копіювати та порівнювати пара. Масив об’єктів, виділених у карті або хеш-карті, за замовчуванням має тип 'пара' , що означає, що всі 'перший' компоненти — це окремі ключі, пов’язані з об’єктами за допомогою їх 'другий'
- Ми використовуємо ім'я змінної, оператор крапки, перше або друге слово , і елемент ми хочемо отримати доступ.
Синтаксис для пари в C++:
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; }
Вихід
структури даних java
200 J
Ініціалізація пари:
Пара також може бути ініціалізована. Ви можете використовувати наступний синтаксис для ініціалізації пари.
Синтаксис:
pair (data_type1, data_type2) Pair_name (value1, value2) ;
Різні підходи до ініціалізації пари:
pair g1; pair g2(1, 'a'); pair g3(1, 10); pair g4(g3);
Марка функція pair(). також можна використовувати для ініціалізації пари.
g2 = make_pair(1, 'a');
Оголошення пари також може використовувати такий синтаксис:
зв'язаний список java
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) make_pair():
За допомогою цієї функції шаблону можна створити пару значень без явного визначення типів.
Синтаксис:
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; }
Вихід
java порівнянна
200 J JavaTpoint 1.23 JavaTpoint is super 4.56
2) замінити:
За допомогою цієї функції відбувається перемикання вмісту двох парних об'єктів. Пари повинні належати до однієї категорії.
Синтаксис:
pair1.swap(pair2) ;
приклад:
dfs проти bfs
#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() працює так само, як і кортежі. Щоб розпакувати значення кортежу (або пари в цьому випадку) у незалежні змінні, він створює a кортеж з lvalue вказівники на його параметри. Ось два варіанти краватки, одна з і одна без 'ігнорувати' , як і в кортежах. Ключове слово 'ігнорувати' запобігає розпакуванню певного елемента кортежу.
Пари мають лише два аргументи, а кортежі можуть мати багато аргументів. Таким чином, розпакування потрібно розглядати явно у випадку пар.
Синтаксис:
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