Instrução return (C++)

Finaliza a execução de uma função e retorna o controle para a função de chamada (ou para o sistema operacional, se o controle for transferido da função main). A execução é retomada na função de chamada no ponto imediatamente após a chamada.

Sintaxe

return [expression];

Comentários

A cláusula expression, caso exista, é convertida no tipo especificado na declaração da função, como se uma inicialização estivesse sendo executada. A conversão do tipo da expressão para o tipo return da função pode criar objetos temporários. Para obter mais informações sobre como e quando os temporários são criados, consulte Objetos temporários.

O valor da cláusula expression é retornado à função de chamada. Se a expressão for omitida, o valor de retorno da função será indefinido. Os construtores e os destruidores, e as funções do tipo void não podem especificar uma expressão na instrução return. As funções de todos os outros tipos devem especificar uma expressão na instrução return.

Quando o fluxo de controle sai do bloco que inclui a definição de função, o resultado é o mesmo que seria se uma instrução return sem uma expressão tivesse sido executada. Isso não é válido para funções que são declaradas como retornando um valor.

Uma função pode ter qualquer número de instruções return.

O exemplo a seguir usa uma expressão com uma instrução return para obter o maior de dois inteiros.

Exemplo

// 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 ));
}

Confira também

Instruções de Hiperlink
Palavras-chave