logo

ДВОЙКА В C++

чифт е термин, използван за комбиниране на две стойности, които могат да бъдат от различни видове данни. чифт предлага техника за съхранение на два различни обекта заедно. По същество го използваме за съхранение кортежи . Контейнер за двойки е директен контейнер, който е посочен в заглавката и съдържа два елемента от данни или обекти.

  • Последователността е фиксирана и първият елемент се нарича 'първо' а вторият като 'втори' (първи, втори) .
  • Възможно е да присвояване, копиране и сравнение чифт. Масивът от обекти, разпределен в карта или хеш карта, е по подразбиране тип 'двойка' , което означава, че всички 'първо' компонентите са отделни ключове, свързани с обекти с техните 'втори'
  • Ние използваме име на променлива, оператор точка, дума first или second , и елемент искаме да имаме достъп.

Синтаксис за двойка в C++:

 pair Pair_name 

Пример:

Програма за чифт на C++;

 #include #include using namespace std; int main() { pair PAIR1; PAIR1.first = 200; PAIR1.second = 'J'; cout << PAIR1.first << ' '; cout << PAIR1.second << endl; return 0; } 

Изход

eol в python
 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'); 

Декларация за двойка може също да използва следния синтаксис:

if else if else 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) ; 

Пример:

groovy език
 #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 << '
&apos;; pair <int, pair> pair3 = { 16, { 18, &apos;p&apos; } }; int x, y; char z; x = pair3.first; tie(y, z) = pair3.second; cout &lt;&lt; x &lt;&lt; &apos; &apos; &lt;&lt; y &lt;&lt; &apos; &apos; &lt;&lt; z &lt;&lt; &apos;
&apos;; } </int,>

Изход

 10 12 16 12 16 18 p