[c++] 함수 템플릿
C++에서 함수 템플릿은 일반 함수를 일반화하는 방법을 제공합니다. 이를 통해 동일한 작업을 수행하지만 다양한 데이터 타입을 다루는 함수를 만들 수 있습니다.
함수 템플릿의 선언과 정의
함수 템플릿은 다음과 같이 선언됩니다.
template <class T>
T Max(T a, T b) {
return (a > b) ? a : b;
}
여기서 template <class T>
는 함수 템플릿을 선언하는 부분입니다. T
는 템플릿 매개변수라고 하며, 이 위치에 들어가는 실제 데이터 타입은 함수가 호출될 때 결정됩니다.
위의 예시에서 T
는 두 개의 매개변수 a
와 b
의 데이터 타입입니다. Max
함수는 입력된 두 값 중 큰 값을 반환하는 함수입니다.
함수 템플릿의 사용
함수 템플릿은 다음과 같이 사용됩니다.
int main() {
int num1 = 10, num2 = 20;
cout << "Maximum is " << Max(num1, num2) << endl;
double d1 = 45.75, d2 = 22.34;
cout << "Maximum is " << Max(d1, d2) << endl;
return 0;
}
위 예시에서 Max
함수 템플릿은 정수형과 실수형 데이터에 대해 각각 호출되었습니다.
함께 보면 좋은 자료
- C++ 템플릿 - MoDooCode에서 제공하는 템플릿에 대한 자세한 내용을 확인할 수 있습니다.
- C++ 함수 템플릿의 활용 - 함수 템플릿의 다양한 활용 예시를 살펴볼 수 있습니다.
함수 템플릿을 활용하면 간편하게 다양한 데이터 타입들에 대한 일반화된 함수를 작성할 수 있습니다.