Как да върнете множество стойности в C++

Kak Da V Rnete Mnozestvo Stojnosti V C



Езикът C++ ни предоставя много функции и прави програмирането ни много по-лесно. Но понякога трябва да върнем множество стойности, докато работим с C++ програмиране. За съжаление, C++ не ни улеснява с тази функция. За да върнем множество стойности в C++, трябва да използваме различните техники. Можем да върнем множество стойности в C++, като използваме кортежи/двойки, указатели и масиви. Ще проучим подробно всички тези техники в това ръководство заедно с кодове и обяснения.

Пример 1: Използване на кортежи/двойки

Нека направим малко практическа демонстрация за връщане на множество стойности в C++. Тук използваме техниките на кортежи/двойки, за да помогнем за връщането на множество стойности в нашия код. C++ предоставя различни заглавни файлове, които трябва да включим в нашия код. Тук включваме „bits/stdc++.h“, тъй като съдържа всички библиотеки за програмиране на C++. След това тук се добавя пространството от имена, което е „std“. След това използваме ключовата дума „tuple“, в която поставяме три типа данни, два типа данни float и останалия един тип данни „char“. Под него използваме ключовата дума „return“, за да опаковаме стойностите, за да върнем кортеж.

Сега използваме метода „сдвояване“, за да върнем множество стойности. В този метод на „двойка“ поставяме два типа данни на променливата и двата са „плаващи“ тук. Променливите се наричат ​​„float_1“ и „float_2“. След това пакетираме две стойности, за да се върнем към „двойките“. След това извикваме „main()“ тук и след това декларираме две „float“ променливи с име „f_1, f_2“. Променливата 'char' също е декларирана тук като 'myChar'. След това разопаковаме стойностите, които се връщат от функцията 'My_Tuple()'.







Под това съхраняваме върнатите стойности по двойки. Ние съхраняваме „4.99, 8.98“ във функцията „My_Tuple“ и „6.86, 3.22“ във функцията „My_Pair“. След това използваме „cout“, който отпечатва цялата информация, която е написана вътре.



Код 1:



#include
използвайки пространство от имена std ;
кортеж < плавам , плавам , въглен > My_Tuple ( плавам f_1, плавам f_2 ) {
връщане make_tuple ( f_2, f_1, '$' ) ;
}
двойка < плавам , плавам > My_Pair ( плавам f_a, плавам f_b ) {
връщане make_pair ( f_b, f_a ) ;
}
вътр основен ( ) {
плавам f_1,f_2 ;
въглен myChar ;
вратовръзка ( f_1, f_2, myChar ) = My_Tuple ( 4,99 , 8,98 ) ;
двойка new_p = My_Pair ( 6.86 , 3.22 ) ;
cout << 'Стойности, които получаваме чрез кортежи:' ;
cout << f_1 << ' ' << f_2 << ' ' << myChar << endl ;
cout << „Стойности, които получаваме чрез чифт:“ ;
cout << нова_стр. първи << ' ' << нова_стр. второ ;
връщане 0 ;
}

Изход :





Стойностите, които получаваме тук, като използваме метода „кортежи“ и „двойка“, са показани по-долу. Имайте предвид, че тук връща множество стойности.



Пример 2: Използване на указателите

Предаваме параметрите заедно с техните адреси във функцията „сравняване“ тук. Добавяме „value_1“ и „value_2“ от типа „int“ и „int* g_Address, int* s_Address“. След това използваме условието „if“, в което добавяме условие, че „value_1“ е по-голямо от „value_2“. Ако това е изпълнено, се изпълнява следният оператор. Ако не е, той игнорира израза, който е добавен под това и преминава към частта „друго“. Сега, след като извикаме “main()”, ние декларираме четири нови променливи с имената “g_value”, “s_value”, “newValue1” и “newValue2”.

След това отпечатваме съобщение за въвеждане на числата и след това поставяме „cin“, което получава две стойности от потребителя. Стойностите, които потребителят въвежда, се записват съответно в променливите „newValue1“ и „newValue2“. След това извикваме функцията “compare()”, която преди това създадохме, и предаваме четири параметъра в нея. След това показваме резултата след изпълнение на функцията „сравняване“ и той показва по-голямото и по-малкото число от тези числа, които потребителят въвежда.

Код 2:

#include
използвайки пространство от имена std ;
невалиден сравнявам ( вътр стойност_1, вътр стойност_2, вътр * g_Address, вътр * s_Адрес )
{
ако ( стойност_1 > стойност_2 ) {
* g_Адрес = стойност_1 ;
* s_Адрес = стойност_2 ;
}
друго {
* g_Адрес = стойност_2 ;
* s_Адрес = стойност_1 ;
}
}
вътр основен ( )
{
вътр g_стойност, s_стойност, нова стойност_1, нова стойност_2 ;
cout << 'Моля, въведете две числа: ' <> нова стойност_1 >> нова стойност_2 ;
сравнявам ( нова стойност_1, нова стойност_2, и g_стойност, и s_стойност ) ;
cout << ' По-голямото число е ' << g_стойност << ' и по-малкото число е '
<< s_стойност ;
връщане 0 ;
}

Изход :
Потребителят въвежда тук „86“ и „23“. След като натиснете 'Enter', той показва резултата. По този начин получаваме множество стойности.

Пример 3: Използване на масива

Тук създаваме функцията “ComputeComparison()”, в която вмъкваме две променливи, “num_1” и “num_2”, като тип “int”, а също и масив с име “my_arr[]”. След това имаме условието „if“, което проверява дали „num_1“ е по-голямо от „num_2“ или не. Ако е вярно, „num_1“ се присвоява на „my_arr[0]“, а „num_2“ се присвоява на „my_arr[1]“. Но ако условието не е вярно, операторите след „else“ се изпълняват, в които присвояваме „num_2“ на „my_arr[0]“ и „num_1“ на „my_arr[1]“.

След това извикваме „main()“ тук и след това декларираме още две int променливи: „newNum_1“ и „newNum_2“. След това се декларира масив с размер '2'. След това получаваме две числа от потребителя с помощта на „cin“ и след това извикваме функцията „ComputeComparison()“ и показваме следния резултат. Така че връща множество стойности тук.

Код 3:

#include
използвайки пространство от имена std ;
невалиден ComputeComparison ( вътр num_1, вътр номер_2, вътр my_arr [ ] )
{

ако ( брой_1 > номер_2 ) {
my_arr [ 0 ] = брой_1 ;
my_arr [ 1 ] = номер_2 ;
}
друго {
my_arr [ 0 ] = номер_2 ;
my_arr [ 1 ] = брой_1 ;
}
}

вътр основен ( )
{
вътр newNum_1, newNum_2 ;
вътр my_arr [ 2 ] ;

cout << „Моля, въведете две числа за сравнение“ <> новNum_1 >> новNum_2 ;
ComputeComparison ( newNum_1, newNum_2, my_arr ) ;
cout << ' По-голямото число е ' << my_arr [ 0 ] << 'и'
'по-малкото число е' << my_arr [ 1 ] ;

връщане 0 ;
}

Изход :
Тук въвеждаме „54“ и „98“ и след това натискаме „Enter“, за да покажем резултата. Той показва както по-големите, така и по-малките числа от числата, които сме въвели.

Пример 4: Използване на кортежи

Тук са включени два заглавни файла: „tuple“ и „iostream“. След това тук се поставя пространството от имена „std“. След това използваме ключовата дума „tuple“ и вмъкваме два типа данни, които са „int“. След това създаваме функция с името „findingValues()“ и предаваме „intValue_1“ и „intValue2“ като нейни параметри.

След това „if“ се поставя там, където въвеждаме условието „intValue_1 < intValue_2“. Под него използваме ключовата дума „return“ и поставяме функцията „make_tuple()“, в която и двете променливи се добавят като параметър „intValue_1, intValue2_“. След това имаме частта „else“, в която отново поставяме „return“ заедно с функцията „make_tuple()“. Но тук първо поставяме „intValue_2“ и след това „intValue1“. Сега извикваме “main()” и инициализираме “new_value1” с “5” и “new_value2” с “28”.

По-долу декларираме още две променливи от тип „int“ с имена „greater“ и „smaller“. След това поставяме функцията „tie()“ и предаваме „по-малки, по-големи“ променливи като параметър и също така извикваме функцията „findingValues()“ тук. След това отпечатваме и двете стойности: по-голямото и по-малкото число.

Код 4:

#include
#include<кортеж>
използвайки пространство от имена std ;
tuple  findingValues ( вътр intValue_1, вътр intValue_2 )
{
ако ( intValue_1 < intValue_2 ) {
връщане make_tuple ( intValue_1, intValue_2 ) ;
}
друго {
връщане make_tuple ( intValue_2, intValue_1 ) ;
}
}
вътр основен ( )
{
вътр нова_стойност1 = 5 , нова_стойност2 = 28 ;
вътр по-голям, по-малък ;
вратовръзка ( по-малък, по-голям ) = намиране на стойности ( нова_стойност1, нова_стойност2 ) ;
printf ( 'По-голямото число е %d и '
'по-малкото число е %d' ,
по-голям, по-малък ) ;
връщане 0 ;
}

Изход :

Числата, които добавяме към нашия код, показват едновременно по-голямата и по-малката стойност. По този начин можем лесно да върнем множество стойности в нашия код.

Заключение

Това ръководство е за „връщането на множество стойности“ в C++ кодове. Проучихме подробно тази идея в това ръководство и обсъдихме три техники, които помагат при връщането на множество стойности в програмирането на C++. Обяснихме, че множество стойности се връщат чрез използване на техниките за кортежи, двойки, указатели и масиви. Всички тези техники са подробно описани тук.