[정리]Template의 기본 개념


[정리]Template의 기본 개념

C++는 인자의 개수나 타입이 다른 경우 동일한 이름을 가지는 함수를 여러개 만들 수 있다. [장점] 1. square 함수는 2개가 있지만 함수 이름이 동일하므로 사용자 입장에서는 하나의 함수로 생각하고 사용할 수 있다. 2. 사용법이 쉬운 일관된 형태의 라이브러리를 만들 수 있다. [단점] 1. square 함수는 인자의 타입과 리턴 값의 타입만을 제외하고 나머지 코드는 동일하다. 2. 유사한 코드를 여러번 만드는 일이다. "코드를 자동으로 생성할 수 있는 방법" 은? C/C++에는 다음의 2가지 방법으로 함수의 틀을 만들 수 있다. 1. 매크로 사용 2. 템플릿 사용 1. 매크로 사용 ※ 매크로 작성 시 여러 줄일 경우 끝에 \를 붙여준다. 매크로를 사용하여 코드를 생성하는 것은 컴파일러가 아닌 전처리기에 의해서 생성되는 것이기 때문에 type을 추론할 수 없어서 MAKE_SQUARE(int) 식으로 생성한다. 2. 템플릿 사용 개발자가 함수(또는 클래스)의 틀(템플릿)을 제공...


#macro #template #type #기본개념 #매크로 #전처리기 #추론 #템플릿

원문링크 : [정리]Template의 기본 개념