X Tutup
The Wayback Machine - https://web.archive.org/web/20220513180346/https://ru.cppreference.com/w/cpp/language/return
Пространства имён
Варианты
Действия

return statement

Материал из cppreference.com
< cpp‎ | language

 
 
Язык С++
Общие темы
Управление потоком
Операторы условного выполнения
if
Операторы итераций (циклы)
Операторы переходов
goto - return
Функции
Объявление функции
Выражение лямбда-функции
Спецификатор inline
Спецификации динамических исключений (до C++20)
Спецификатор noexcept (C++11)
Исключения
Пространства имён
Типы
Спецификаторы
decltype (C++11)
auto (C++11)
alignas (C++11)
Спецификаторы длительности хранения
Инициализация
Выражения
Альтернативные представления
Литералы
Логические - Целочисленные - С плавающей запятой
Символьные - Строковые - nullptr (C++11)
Определённые пользователем (C++11)
Утилиты
Атрибуты (C++11)
Типы
Объявление typedef
Объявление псевдонима типа (C++11)
Приведения
Неявные преобразования - Явные преобразования
static_cast - dynamic_cast
const_cast - reinterpret_cast
Выделение памяти
Классы
Свойства функции, зависящие от класса
explicit (C++11)
static
Специальные функции-элементы
Шаблоны
Разное
 
Завершает текущей функции и возвращает указанное значение вызывающему функцию.
Оригинал:
Terminates current function and returns specified value to the caller function.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Содержание

[править] Синтаксис

return expression (1)
return (2)

[править] Объяснение

Первая версия оценивает expression, завершает текущую функцию и возвращает результат expression вызывающей функции. В результате тип expression должны быть конвертированы в функционировать возвращаемого типа.
Оригинал:
The first version evaluates the expression, terminates the current function and returns the result of the expression to the caller function. The resulting type of the expression must be convertible to function return type.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вторая версия завершает текущую функцию. Только справедливо, если тип возвращаемого функцией является void.
Оригинал:
The second version terminates the current function. Only valid if the function return type is void.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править] Ключевые слова

return

[править] Пример

#include <iostream>
 
void fa(int i)
{
    if (i == 2) return;
    std::cout << i << '\n';
}
 
int fb(int i)
{
    if (i > 4) return 4;
    std::cout << i << '\n';
    return 2;
}
 
int main()
{
    fa(2);
    fa(1);
    int i = fb(5);
    i = fb(i);
    std::cout << i << '\n';
}

Вывод:

1
4
2
X Tutup