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!