Назначение двух предварительно объявленных переменных для возврата функции ⇐ C++
-
Гость
Назначение двух предварительно объявленных переменных для возврата функции
У меня есть функция, которая возвращает std::pair. У меня также есть две предварительно объявленные переменные x и y. Я хочу сделать что-то вроде этого:
int x; интервал y; если (флаг) { x, y = func_that_returns_pair(некоторые аргументы); } еще { x, y = func_that_returns_pair(несколько разных аргументов); } Я посмотрел «Могу ли я назначить две переменные одновременно в C++?», а в C++11 вы можете использовать std::tie. Я не думаю, что подход auto [x, y] здесь будет работать, поскольку x, y уже объявлены и здесь есть условие if/else. Есть ли другой способ сделать это, кроме использования std::tie?
У меня есть функция, которая возвращает std::pair. У меня также есть две предварительно объявленные переменные x и y. Я хочу сделать что-то вроде этого:
int x; интервал y; если (флаг) { x, y = func_that_returns_pair(некоторые аргументы); } еще { x, y = func_that_returns_pair(несколько разных аргументов); } Я посмотрел «Могу ли я назначить две переменные одновременно в C++?», а в C++11 вы можете использовать std::tie. Я не думаю, что подход auto [x, y] здесь будет работать, поскольку x, y уже объявлены и здесь есть условие if/else. Есть ли другой способ сделать это, кроме использования std::tie?
Мобильная версия