윤성우의 열혈 C++ 프로그래밍 (개정판) (저자 윤성우 / 출판 오렌지미디어)
- 중요 Point.
함수호출 시 전달되는 인자를 통해서 호출하고자 하는 함수의 구분이 가능하다.
따라서 동일한 이름의 함수정의를 허용한다. 이러한 함수의 형태를 '오버로딩'이라 한다.
오버로딩(Function Overloading): 매개변수의 자료형또는 개수가 다를 때 가능 단, 함수의 반환형은 같아야 함.
- 문제
#include<iostream>
void swap(int* num1, int* num2) {
int temp = *num1;
*num1 = *num2;
*num2 = temp;
}
void swap(char* ch1, char* ch2) {
char temp = *ch1;
*ch1 = *ch2;
*ch2 = temp;
}
void swap(double* dbl1, double* dbl2) {
double temp = *dbl1;
*dbl1 = *dbl2;
*dbl2 = temp;
}
int main()
{
int num1 = 20, num2 = 30;
swap(&num1, &num2);
std::cout << num1 << ' ' << num2 << std::endl;
char ch1 = 'A', ch2 = 'Z';
swap(&ch1, &ch2);
std::cout << ch1 << ' ' << ch2 << std::endl;
double dbl1 = 1.111, dbl2 = 5.555;
swap(&dbl1, &dbl2);
std::cout << dbl1 << ' ' << dbl2 << std::endl;
return 0;
}
'[프로그래밍 언어] > [C++]' 카테고리의 다른 글
[ 윤성우 열혈 C++ ] 문제 01 - 1 C++ 기반의 데이터 입출력. (0) | 2023.02.03 |
---|