PROGRAMMING LANGUAGE/C++
C++ 함수 템플릿 사용하기
JC0
2021. 7. 6. 00:22
#include <iostream>
// 함수 템플릿 원형
template <class Any>
void Swap(Any& a, Any& b);
using namespace std;
int main()
{
int i = 10;
int j = 20;
cout << "i, j = " << i << ", " << j << ".\n";
cout << "컴파일러가 생성한 int형 교환기를 사용하면\n";
Swap(i, j);
cout << "이제 i, j = " << i << ", " << j << ".\n";
double x = 24.5;
double y = 81.7;
cout << "x, y = " << x << ", " << y << ".\n";
cout << "컴파일러가 생성한 double형 교환기를 사용하면\n";
Swap(x, y);
cout << "이제 x, y = " << x << ", " << y << ".\n";
return 0;
}
// 함수 템플릿 정의
template <class Any>
void Swap(Any& a, Any& b)
{
Any temp;
temp = a;
a = b;
b = temp;
}
함수 템플릿이 실행 프로그램을 짧게 만들어 주지는 않는다. 함수 템플릿의 장점은 오버로딩해서 사용하는 것보다 여러개의 함수 정의를 할 필요없이 간단하고 신뢰성 있게 생성할 수 있다.