Оператор return (C++)

Завершает выполнение функции и возвращает элемент управления в вызывающую функцию (или в операционную систему при передаче управления из функции main). Выполнение возобновляется в вызывающей функции в точке сразу после вызова.

return [expression];

Заметки

Предложение expression, при его наличии, преобразуется в тип, указанный в объявлении функции, как если бы выполнялась инициализация. В результате преобразования из типа выражения в тип return функции могут быть созданы временные объекты. Дополнительные сведения о способе и времени создания временных объектов см. в разделе Временные объекты.

Значение предложения expression возвращается в вызывающую функцию. Если выражение пропущено, то возвращаемое значение функции не определено. Конструкторы, деструкторы и функции типа void не могут определить выражение в операторе return. Функции всех других типов должны указать выражение в операторе return.

Если поток элемента управления выходит из блока, включающего определение функции, результат будет таким же, как если бы был выполнен оператор return без выражения. Это недопустимо для функций, объявленных как возвращающие значение.

Функция может иметь неограниченное число операторов return.

В следующем примере используется выражение с оператором return для получения наибольшего из двух целых чисел.

Пример

// return_statement2.cpp
#include <stdio.h>

int max ( int a, int b )
{
   return ( a > b ? a : b );
}

int main()
{
    int nOne = 5;
    int nTwo = 7;

    printf_s("\n%d is bigger\n", max( nOne, nTwo ));
}

См. также

Ссылки

Операторы перехода (C++)

Ключевые слова в C++