/*
다음 main 함수에서 필요로 하는 swap 함수를 오버로딩 해서 구현해보자
*/
#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(void) //문제에서 주어진 main 함수
{
int num1 = 20, num2 = 30;
std::cout << num1 << ' ' << num2 << std::endl;
std::cout << "swap 함수 실행 결과" << std::endl;
swap(&num1, &num2);
std::cout << num1 << ' ' << num2 << std::endl<<std::endl;
char ch1 = 'A', ch2 = 'Z';
std::cout << ch1 << ' ' << ch2 << std::endl;
std::cout << "swap 함수 실행 결과" << std::endl;
swap(&ch1, &ch2);
std::cout << ch1 << ' ' << ch2 << std::endl<<std::endl;
double dbl1 = 1.111, dbl2 = 5.555;
std::cout << dbl1 << ' ' << dbl2 << std::endl;
std::cout << "swap 함수 실행 결과" << std::endl;
swap(&dbl1, &dbl2);
std::cout << dbl1 << ' ' << dbl2 << std::endl;
return 0;
}
개발 환경:Visual Studio 2017
지적, 조언, 질문 환영입니다! 댓글 남겨주세요~
[참고] 열혈 C++ 프로그래밍 윤성우 저
'C++ > 열혈 C++ 프로그래밍(윤성우 저)' 카테고리의 다른 글
열혈 C++ 프로그래밍 2-1 문제 (2) | 2017.05.28 |
---|---|
OOP 단계별 프로젝트 1 (0) | 2017.05.28 |
열혈 C++ 프로그래밍 1-4 문제 (0) | 2017.05.28 |
열혈 C++ 프로그래밍 1-3 문제 (2) | 2017.05.28 |
열혈 C++ 프로그래밍 1-1 문제 (0) | 2017.05.28 |