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

C++ 참조 반환

이 문서에서는 함수에서 참조를 통해 값을 반환하는 방법과 프로그램에서 효과적으로 사용하는 방법을 배울 것입니다.

C ++프로그래밍에서는 참조를 통해 값을 전달할 뿐만 아니라,함수또한, 참조를 통해 값을 반환할 수 있습니다.

이 기능을 이해하기 위해, 다음 내용을 이해해야 합니다:

예제: 참조를 통해 반환

#include <iostream>
using namespace std;
// 전역 변수
int num;
// 함수 선언
int& test();
int main()
{
    test() = 5;
    cout << num;
    return 0;
}
int& test()
{
    return num;
}

출력 결과

5

위 프로그램에서 test() 함수의 반환 타입은 int&입니다. 따라서, 이 함수는 num 변수의 참조를 반환합니다.

return 문장은 return num;입니다. 값 반환과 달리, 이 문장은 num의 값을 반환하지 않고, 변수 자체(주소)를 반환합니다.

따라서, 반환할 때변수에서 값을 할당할 수 있습니다. 예를 들어, test()= 5에서 완료된 것과 같이;

이는5변수 num에 저장하고, num 변수를 화면에 표시합니다.

참조로 반환할 때 기억해야 할 중요 사항.

  • 보통 함수 반환 값이지만, 이 함수는 반환하지 않습니다. 따라서 상수를 반환할 수 없습니다.

    int& test() {
        return 2;
    }
  • 이 함수에서는 지역 변수를 반환할 수 없습니다。

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