1. 함수 오버로딩 (Function Overloading)
#include <iostream>
int MyFucntion(int num)
{
++num;
return num;
}
int MyFucntion(int a, int b)
{
return a + b;
}
int main()
{
MyFucntion(10); // MyFucntion(int num) 호출
MyFucntion(5, 10); // int MyFucntion(int a, int b) 호출
return 0;
}
◾ 함수호출 시 전달되는 인자를 통해서 호출하고 하는 함수의 구분이 가능하다.
◾ 이와 같이 호출할 때 밑에 사용 가능한 방법들이 나온다.
◾ C++ 은 호출할 때 함수의 이름, 매개변수의 선언 둘 다 활용하기 때문이다.
◾ C 언어에서는 함수의 오버로딩이 불가능하다. (호출할 때 함수의 이름만 찾기 때문)
◾ 고로 함수의 오버로딩이 가능 하려면 매개변수의 선언이 달라야 한다.
#include <iostream>
using namespace std;
void MyFunction(void)
{
cout << "MyFunction" << endl;
}
void MyFunction(char b)
{
cout << "MyFunction(char b)" << endl;
}
void MyFunction(int a, int b)
{
cout << "MyFunction(int a, int b)" << endl;
}
int main()
{
MyFunction();
MyFunction('a');
MyFunction(5, 10);
return 0;
}
'C++ > C++ 기초 문법' 카테고리의 다른 글
[C++] 열거 타입 (0) | 2023.12.22 |
---|---|
[C++] 인라인(inline) 함수 (0) | 2023.12.22 |
[C++] 매개변수의 디폴트 값 (0) | 2023.12.21 |
[C++] namespace - 네임스페이스 (1) | 2023.12.20 |
[C++] C++ 기초 (0) | 2023.12.20 |