함수 return

DevBison·2025년 8월 13일

return은 함수가 계산한 결과를 호출한 쪽에 돌려주기 위해 쓰이며, 값 전달·흐름 제어 두 가지 역할이 있습니다.

함수에서 return 반환값을 쓰는 이유

1. 결과를 호출한 쪽에 전달하기 위해

  • 함수 내부에서 계산한 값이나 처리 결과를 호출한 코드로 되돌려줌
  • 호출한 곳에서 그 값을 변수에 저장하거나 다른 연산에 사용 가능
int Add(int a, int b) {
    return a + b; // 계산 결과를 되돌려줌
}

int main() {
    int sum = Add(3, 5); // sum은 8이 됨
}

2. 함수의 실행 흐름을 종료하기 위해

  • return이 실행되면 그 시점에서 함수 실행이 끝남
  • 남은 코드가 있어도 실행하지 않음
void CheckNumber(int num) {
    if (num < 0) {
        std::cout << "음수!\n";
        return; // 여기서 함수 종료
    }
    std::cout << "양수!\n";
}

3. 반환값이 필요한 이유

  1. 재사용성: 같은 함수를 호출할 때마다 다른 결과를 받을 수 있음
  2. 모듈화: 함수는 ‘입력 → 처리 → 출력’ 구조를 가지게 되어 독립적인 기능 단위가 됨
  3. 가독성: 함수가 어떤 값을 돌려주는지 명확하면 코드 이해가 쉬워짐
  4. 연계성: 반환값을 다른 함수에 바로 전달 가능
int DoubleValue(int n) { return n * 2; }
int TripleValue(int n) { return n * 3; }

int main() {
    int result = TripleValue(DoubleValue(5)); // (5*2)*3 = 30
}

4. 반환값이 없는 경우 (void)

  • 결과를 돌려줄 필요가 없을 때 사용
  • 대신 함수 내부에서 출력, 상태 변경 등 다른 동작 수행
void PrintHello() {
    std::cout << "Hello\n";
}

5. 언리얼 엔진 예시

UFUNCTION(BlueprintCallable)
float GetPlayerHealth() {
    return CurrentHealth; // 캐릭터 체력을 블루프린트에서 가져갈 수 있음
}

핵심 정리

  • return값 전달함수 종료라는 두 역할을 한다.
  • 반환값이 있으면 호출한 곳에서 그 값을 활용해 추가 연산이나 로직을 수행할 수 있다.
  • 반환값이 없을 때는 void를 사용하고, 그 경우 함수는 주로 상태 변경이나 출력만 수행한다.
profile
응애 개발자

0개의 댓글