[c++] 템플릿과 예외 처리
이 블로그 포스트에서는 C++에서 템플릿과 예외 처리의 개념과 사용 방법을 알아보겠습니다.
템플릿(Template)
템플릿은 C++에서 코드의 일반화를 가능하게 해주는 강력한 기능입니다. 템플릿은 코드의 재사용을 촉진하며 제네릭 프로그래밍을 지원합니다. 템플릿을 사용하면 동일한 코드를 여러 자료형 또는 여러 인수에 대해 재활용할 수 있습니다.
template <typename T>
T getMax(T a, T b) {
return (a > b) ? a : b;
}
위의 예시에서 getMax
함수는 템플릿을 사용하여 임의의 자료형에 대해 최댓값을 반환할 수 있습니다.
예외 처리(Exception Handling)
예외 처리는 프로그램 실행 중에 발생할 수 있는 예기치 않은 상황에 대비하는 메커니즘입니다. C++에서는 try
, catch
, throw
키워드를 사용하여 예외 처리를 구현할 수 있습니다.
#include <iostream>
int division(int a, int b) {
if (b == 0) {
throw "Divide by zero exception";
}
return a / b;
}
int main() {
try {
int result = division(10, 0);
std::cout << "Result: " << result << std::endl;
} catch (const char* msg) {
std::cerr << "Error: " << msg << std::endl;
}
return 0;
}
위의 예시에서 division
함수는 두 숫자를 나누는데, 만약 두번째 숫자가 0이라면 “Divide by zero exception” 예외를 발생시킵니다. 이 예외를 try
블록 안에서 catch
하여 적절하게 처리할 수 있습니다.
결론
이번 포스트에서는 C++에서의 템플릿과 예외 처리의 개념과 간단한 예시를 살펴보았습니다. 템플릿을 사용하여 제네릭 프로그래밍을 지원하고, 예외 처리를 통해 예기치 않은 상황에 대비하는 방법을 익혔습니다.
더 많은 정보를 원하시면 아래의 참고 자료를 참고하세요.
참고 자료
- C++ Templates - learncpp.com
- Exception handling in C++ - GeeksforGeeks