Вопрос по С++ (НЕ ЗАДАЧА)

С++

у меня есть функция которая возвращает 2 результата - 2 переменные
(return znak,i;)
как после отработки этой процeдeры 2 получить значение
например a=znak; b=i;
Ответы:
В С++ чтобы функция возвращала более чем один результат надо использовать указатели.
void some_fn(int * var1, int * var2)
{
//actions
++(*var1);
--(*var2);
}
Есть 2 варианта:
1. Создаём специальную структуру для возврата значения из этой функции, и возвращаемый тип тогда, соответственно, это тип этой структуры (с двумя нужными нам полями). Вариант этот ПЛОХОЙ, использовать его не стоит.
2. Возвращаем значения через указатель.
void myFunc(int & a, char & b)
{
   *a = 6;
   *b = 'h';
}
Так - никак, через return можно вернуть только одно значение.


14 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.