헤더 파일의 맨 하단에 템플릿 클래스를 구현한 파일을 include 시켜주면 됩니다. (#include 는 대상이 되는 파일을 단순히 붙여 넣어주는 역할을 하므로)

mytemplateclass.h
  • cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#ifndef MYTEMPLATECLASS_H
#define MYTEMPLATECLASS_H

namespace ggultip
{
template <typename T>
class mytemplateclass
{
public:
mytemplateclass();
~mytemplateclass();

...
};
}

#endif

#include "mytemplateclass.impl.h"
mytemplateclass.impl.h
  • cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once

namespace ggultip
{
template <typename T>
mytemplateclass<T>::mytemplateclass()
{
...
}

template <typename T>
mytemplateclass<T>::~mytemplateclass()
{
...
}

...
}

Reference

  • Michael Main, Walter Savitch. (2010). Data Structures & Other Objects Using C++, 4th Edition. Pearson