English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C++ Retorno por referência

Neste artigo, você aprenderá como retornar valores por referência em funções e como usá-los eficazmente em programas.

No C ++Na programação, além de passar valores por referênciaFunçãoTambém pode ser retornado por referência.

Para entender essa funcionalidade, você deve entender o seguinte:

Exemplo: Retorno por referência

#include <iostream>
using namespace std;
// Variável global
int num;
// Declaração de função
int& test();
int main()
{
    test() = 5;
    cout << num;
    return 0;
}
int& test()
{
    return num;
}

Resultado de saída

5

No programa acima, o tipo de retorno da função test() é int&. Portanto, esta função retorna uma referência para a variável num.

A instrução return é return num;. Diferente de retornar por valor, esta instrução não retorna o valor de num, mas sim o próprio objeto (endereço).

portantoportantovariável 5ao atribuir um valor a ele, como em test() =

Isso fará o mesmo que no5Armazenar na variável num, que é exibida na tela.

Ponto importante a lembrar ao retornar por referência.

  • Retorno de valor de função comum, mas essa função não retorna. Portanto, você não pode retornar constantes.

    int& test() {
        return 2;
    }
  • Você não pode retornar uma variável local dessa função.

    int& test()
    {
        int n = 2; 
        return n; 
    }