Template &Operator für Parameter in Methode funktioniert nicht
-
Hallo!
Kann mir einer sagen, warum das hier funktioniert:
Header:class Number { public: void doubleNum(int&); };
.cpp:
void Number::doubleNum(int& x) { x *= 2; }
Das hier aber nicht?
Header:class Number { public: template <class T> void doubleNum(T&); };
.cpp:
template <class T> void Number::doubleNum(T& x) { x *= 2; }
ich kriege dann einen LNK2001: unresolved external symbol "... Fehler. Warum ist das so? Und wie müsste es richtig heißen?
-
Ohne lange Erklärung: Du musst die Implementation deines Templates in den Header verschieben.
-
Also zur Deklaration auch die Definition? Weil die Deklaration ist ja im Header.
-
Ah... ich seh's ja, danke!