반응형
●템플릿 함수
- 인수나 반환값의 형을 모호한 상태로 정의하는 함수. 템플릿 함수의 기능을 사용하면, 복수의 형에 대응하느 함수를 만들 수 있다. 컴파일러는 템플릿 함수를 호출하는 부분을 발견하면, 이것들을 구체적인 함수로 만든다.
ex)
template<class T>
T Aaa(T a, T b){ //템플릿 인수(T) 부분에 int형이나 double등 자료형이 치환된다.
T buf;
~~
}
int a=100, b=200, c;
c=Aaa(a, b); //템플릿 인수가 int로 치환
●템플릿 함수의 이용
- 템플릿 함수를 이용하면 내용은 거의 동일하지만 형이 다른 함수를 하나로 만들 수 있다.
●템플릿 클래스
- 사용하는 형을 모호한 상태로 정의하는 클래스. 템플릿 클래스 기느을 사용하면 복수의 형에 대응하는 클래스를 만들 수 있다.
ex)
template<class T>
class Aaa{
public:
~~
T Add(){
return a+b;
}
T a, b, c, d;
};
●템플릿 클래스의 오브젝트를 생성할 꼉우, 다음과 같이 사용할 형을 지정.
ex)
Aaa<int> aa;
Aaa<double> aa;
●템플릿 인수가 2개 이상 있을 경우, 다음과 같이 형을 복수로 지정
template<class T1, class T2>
class Aaa{
~~
};
Aaa<int, char> aa;
●표준 템플릿 라이브러리(STL - Standard Template Library)
- 템플릿 클래스를 사용하는 표준 라이브러리
반응형
'프로그래밍 > c++' 카테고리의 다른 글
c++ visual c++로 프로젝트 시작하기 (0) | 2013.06.11 |
---|---|
c++ 폴더안에 있는 헤더파일 include (0) | 2013.05.26 |
c++ 기본 문법 정리3 (0) | 2012.02.17 |
c++ 기본 문법 정리2 (0) | 2012.02.16 |
c++ 기본 문법 정리1 (0) | 2012.02.16 |
댓글