C++/기타

템플릿(Template)

diesuki4 2023. 1. 20. 21:58

 

템플릿(Template)

  • Compile time에 형식이 자동으로 추론되어 구체화된다.
  • 자료형마다 함수를 만들지 않고 재활용할 수 있다.
  • 템플릿을 사용하는 자료형의 개수만큼 코드의 크기가 증가한다.
  • 컴파일 시간이 증가한다.

 

#include <iostream>
#include <array>

using namespace std;

template <typename T, size_t N>
void print(const array<T, N>& arr)
{
    for (T e : arr)
        cout << e << ' ';
    cout << endl;
}

void main()
{
    array<int, 3> arr1 = {1, 2, 3};
    array<float, 5> arr2 = {4.1, 5.2, 6.3, 7.4, 6.5};
    
    print(arr1);
    print(arr2);
}

 

출력

1 2 3
4.1 5.2 6.3 7.4 6.5