본문 바로가기
C++

C++ 오버로딩 (overloading) 공부하기!

by 여름코딩 2023. 2. 15.
반응형

안녕하세요 판타지코딩입니다!

 

오늘은 C++의 오버로딩에 대해서 공부해 보겠습니다!

 

오버로딩

 

1. 오버로딩이란?

오버로딩은 함수의 이름은 같지만, 인자의 개수를 다르게 해서 함수 호출시 구분할 수 있도록 하는 기능입니다. 함수의 이름이 같으면 어떤 함수를 호출할 것인지 구분할 수 없으므로 컴파일 오류가 발생합니다. 그런데 인자를 다르게 하면 함수 호출시 어떤 함수를 의미하는지 구분할 수 있게 됩니다. 오버로딩 예제를 보겠습니다.

 

int func(int num1)
{
    int result = num1;
    return result;
}

int func(int num1, int num2)
{
    int result = num1 + num2;
    return result;

func 함수의 이름은 동일합니다. 첫 번째 func 함수는 int형 변수 num1을 받아 result에 저장하고 return합니다. 두 번째 func는 int형 변수 num1과 num2를 받아 합 한 뒤에 result에 저장하고 return합니다. 이처럼 함수의 이름은 동일하나 인자의 개수를 다르게 해서 함수의 동작을 다르게 합니다.

 

함수를 호출해 보겠습니다.

 

func(1);

func(1, 2);

첫 번째 함수는 1개의 인자를 받으므로 1을 반환하는 함수입니다. 두 번째 함수는 2개의 인자를 받으므로 1+2를 계산해서 반환하는 함수입니다. 이렇게 함수의 이름이 같으므로 인자로 구분하는 것이 바로 오버로딩입니다.

 

오늘은 오버로딩에 대해서 알아보고 예제를 통해 공부해 보았습니다.

 

감사합니다!

반응형