본문 바로가기
Computer & Program/잡다한 이모저모

[C++]Function Template

by TDRemon 2009. 7. 18.
반응형

이번에 볼 것은 Tmeplate이다. 얘기도 많이 듣고 책 같은 곳에서 많이 보아는 왔지만 막상 쓰라고 하면 어떻게 써야할지 잘 움직이던 손가락이 멈추는 경험을 해보셨을꺼라 빈다.(나만 그런거면 억울하니까~ - 3-) 우선 Template은 어떨때 쓰는거냐하면 예를 들어 똑같은 동작을 하는데 변수 타입만 다른경우가 있을 때 쓴다. 예를 들어 파라미터로 int형 2개를 넘겨줘서 2개의 곱도 구해야하고 double형 2개를 넘겨줘서 2개의 곱을 구해야 하는 함수가 필요하다고 하자. 이럴때 Template를 사용하면 굳이 2개의 함수를 별도로 만들 필요가 없다.

그럼 간단한 예를 하나 보면...

1
2
3
4
5
6
template <typename T>    // typename이 반드시 T일 필요는 없다. 단, 모두 같은 변수 이름을 써야만 한다.
T function_Name(T x, T y, ...)    // 마찬가지로 대문자 T로 쓴 것은 위에서 typename을 T로 해주었기 때문
{
    // 각종 함수들. 위에서 return type을 정해 줬음으로 이와 같은 경우 뭔가를 return해 주어야 함.
    return something;
}
cs

이건 어디까지나 간단한 코드이기에 그냥 그렇게 보일 뿐이고 막상 복잡해 졌을 때는 나름 쓸모가 있다. 라기보다 상당히 유용하니 한번쯤 보고 댓글 좀 남겨도 충분히 이익을 꺼라 믿어 의심치 않는다.


반응형

'Computer & Program > 잡다한 이모저모' 카테고리의 다른 글

[C/C++]컴파일 & 링크  (0) 2009.07.22
[C++]inline Function  (0) 2009.07.22
[C++]cin의 함정 피하기  (0) 2009.07.18
01.리눅스 개요 - 리눅스 역사  (0) 2009.07.16
유닉스 기본 명려어  (0) 2009.07.06

댓글