std :: tuple, std :: pair | Возврат нескольких значений из функции с использованием кортежей и пар в C ++
Могут быть случаи, когда вам нужно вернуть несколько значений (могут иметь разные типы данных) при решении проблемы. Один из способов сделать то же самое - использовать указатели, структуры или глобальные переменные, уже обсуждавшиеся здесь.
Есть еще один интересный способ сделать то же самое без использования вышеуказанных методов, используя кортежи (для возврата нескольких значений) и пары (для двух значений).
Мы можем объявить функцию с возвращаемым типом как пару или кортеж (в зависимости от того, что требуется) и можем упаковать возвращаемые значения и вернуть упакованный набор значений. Возвращенные значения можно распаковать в вызывающей функции.
Кортеж
- Кортеж - это объект, способный содержать набор элементов, каждый из которых может быть разного типа.
- Шаблон класса
std::tuple
- это набор разнородных значений фиксированного размера.
Пара
- Этот класс объединяет пару значений, которые могут быть разных типов.
- Пара - это частный случай std :: tuple с двумя элементами
Примечание. Кортеж также можно использовать для возврата двух значений вместо использования пары.
Выход:
Значения, возвращаемые кортежем: 10 5 a Значения, возвращаемые Pair: 2 5
Эта статья предоставлена Mayank Rawat. Если вам нравится GeeksforGeeks, и вы хотели бы внести свой вклад, вы также можете написать статью и отправить ее по электронной почте на deposit@geeksforgeeks.org. Посмотрите, как ваша статья появляется на главной странице GeeksforGeeks, и помогите другим гикам.
Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по теме, обсужденной выше.