unresolved external symbol beim Objekt erstellen?
-
Hallo liebes Forum,
mein Compiler schmeißt seit heute einen Fehler wenn ich ein Objekt erzeugen will.
1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall Clock::~Clock(void)" (??1Clock@@QAE@XZ) referenced in function _main 1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall Clock::Clock(void)" (??0Clock@@QAE@XZ) referenced in function _mainIch weiß nicht, woran das liegt. Anscheind mummt er , weil ich den Konstruktor und den Destruktor mit in meiner hpp Datei aufführe? Wenn ich den rausnehme, dann gehts.
#ifndef _CLOCK_H #define _CLOCK_H #include <SFML/System.hpp> class Clock { private: sf::Clock clock; sf::Time time; public: Clock(); ~Clock(); void refreshTime(); float getTime(); }; #endifEs wundert mich aber irgendwie, da ich das bislang immer so gemacht habe und alte Klassen die sonst immer gingen, nun auch plötzlich diesen Fehler schmeißen.
Was bedeutet der und was kann ich dagegen tun? In meiner Clock Klasse wollte ich im Konstruktur einige Aufrufe durchführen ...
Vielen Dank !

-
Ok ich sehe gerade, es liegt wohl daran das ich den Konstruktor und Destruktor im Header aufführe, aber in der CPP Datei. Ich dachte das muss man nicht?
-
Wenn dir der Standardkonstruktor bzw. Destruktor reicht, dann darfst du ihn gar nicht aufführen. Andernfalls musst du ihn auch implementieren.