template 를 사용해서 linked list 를 구현해보려 하는데요, <div>아래와 같은 에러가 발생합니다.</div> <div>어디가 잘못됐는지 지적과 설명좀 부탁 드릴게요.</div> <div><br><div>undefined reference to List<int>::List().</div> <div>undefined reference to List<int>::append(int)</div> <div><span style="font-size:9pt;">undefined reference to List<int>::~List()</span></div> <div><span style="font-size:9pt;"><br></span></div> <div><b>element.hpp</b></div> <div><br></div> <div>template <typename T></div> <div>class Element</div> <div>{</div> <div>private : </div> <div> T value;</div> <div> Element *mNextElemnet;</div> <div>public :</div> <div> Element();</div> <div> Element(T);</div> <div> ~Element();</div> <div>};</div> <div><br></div> <div><b>element.cpp</b></div> <div>template <typename T></div> <div>Element<T>::Element()</div> <div>{}</div> <div><br></div> <div>template <typename T></div> <div>Element<T>::Element(T val)</div> <div>{ value = val }</div> <div><br></div> <div>template <typename T></div> <div>Element<T>::~Element()</div> <div>{}</div> <div><br></div> <div><b>list.hpp</b></div> <div><b><br></b></div> <div>template <typename T> class Element;</div> <div><b><br></b></div> <div>template <typename T></div> <div>class List</div> <div>{</div> <div>private :</div> <div> Element<T> *mHeader;</div> <div>public :</div> <div> List();</div> <div> ~List();</div> <div> void append(T);</div> <div>};</div> <div><br></div> <div><b>list.cpp</b></div> <div>template <typename T></div> <div>List<T>::List()</div> <div>{</div> <div> mHeader = NULL;</div> <div>}</div> <div><b><br></b></div> <div>template <typename T></div> <div>List<T>::~List()</div> <div>{}</div> <div><br></div> <div>template <typename T></div> <div>void</div> <div>List<T>::append(T element)</div> <div>{</div> <div><span style="white-space:pre;"> </span>if(!mHeader) mHeader = new Element<T>(element);</div> <div> <span style="white-space:pre;"> </span>else mHeader->add(element)</div> <div>}</div> <div><b><br></b></div> <div><b style="font-size:9pt;">main.cpp</b></div> <div><br></div> <div>int main()</div></div> <div>{</div> <div><span style="white-space:pre;"> </span>List<int> intList;</div> <div><span style="white-space:pre;"> </span>intList.append(1);</div> <div><span style="white-space:pre;"> </span>intList.append(2);</div> <div><span style="white-space:pre;"> </span>return 0;</div> <div>}</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.