객체지향언어
-
C++ - 함수 오버로딩에 대한 이해 (Function Overloading)Knowledge/Programing 2020. 7. 13. 00:20
안녕하세요. 현재 열심히 C++을 공부하고 있는 필자이다. (갑자기 분위기 근황토크) 이번 글에서는 객체지향 언어의 특징이기도한 함수 오버로딩에 대해서 써보려고 한다. 절차지향 언어인 C에서는 다음과 같은 코드는 오류가 발생한다. #include int Func(int num){ printf("%d\n", num); return num; } int Func(int a, int b){ return a+b; } int main(void){ int tmp; tmp = Func(30); return 0; } 이유는 함수의 이름이 "Func"으로 동일하기 때문이다. 하지만 C++의 경우에는 어떨까? 무리없이 실행이 가능하다. 그 이유가 바로 함수의 오버로딩덕분이다. 같은 이름을 쓰더라도 받는 인자를 따라 구분이 ..