У меня проблема, которую я действительно не понимаю. У меня есть класс Node.
template<class T>
class node {
protected:
T _data;
public:
node(T data);
};
Это находится в файле node.h ". В файле node.cpp" есть этот конструктор:
#include "node.h"
template<class T>
node<T>::node (T data) {
_data = data;
}
Пока компилятор не обнаруживает ошибки, компоновщик (ld) сообщает мне:
/usr/bin/ld: Undefined символы:
node <INT> :: node (целое)
странная часть... если я переведу конструктор из .cpp в файл .h, все будет хорошо. Где проблема?