반응형
C++에서 탬플릿(Template)는 함수나 클래스에 가변타입을 정의하여 사용 시 그 내용을 결정하는 것입니다.
PPT에서도 탬플릿이라는 기본 틀들이 있습니다.
그것들은 받아서 각자 자신에 맞게 사용할 수 있습니다.
즉, 기본틀은 있지만, 사용자의 필요에 따라 타입을 결정하는 것보고 Template라고 합니다.
아래 예시는 int 타입과 float 타입 두 숫자를 더하는 함수가 2개가 있었습니다.
그것을 Template를 통하여 하나의 함수로 사용하고 매개변수를 통해 필요한 함수로 사용할 수 있습니다.
배열의 경우 정적으로 크기를 정해놓는 것이기 때문에 동적으로 사용하는 template를 사용할 수 없습니다.
모든 매개변수가 T일 필요는 없므녀, 필요한 곳만 T로 작성해주면 됩니다.
아래 예시를 보시면 아시겠지만 처음부터 Template을 활용하여 코드를 작성하면 굉장히 헷갈릴 것입니다.
따라서, 추천드리는 방법은 코드를 모두 완성한 후 필요한 부분을 T로 기계적으로 변경하는 방법입니다.
코드를 효율적으로 작성할 수 있지만 그만큼 오류를 범하기 쉬우니 꼭 사용 시 유의해주세요!
반응형
'전공공부 > C, C++' 카테고리의 다른 글
[C++] 12. C++ 파일 입출력 (2) | 2024.07.03 |
---|---|
[C++] 11. C++ Class Virtual Function (2) | 2024.07.03 |
[C++] 10. C++ Class 상속(Inheritation) (3) | 2024.07.02 |
[C++] 9. C++ operator(=) overloading를 통한 Deep Copy, this pointer (31) | 2024.06.03 |
[C++] 8. C++ friend keyword, operator overloading (42) | 2024.05.23 |