Hallo,
ich bin gerade dabei, mich etwas in C++ unter Linux (Ubuntu) einzuarbeiten. Als Editor benutze ich Geany. Testweise habe ich folgenden Code geschrieben:
main.cpp:
#include
#include "testclass.h"
using namespace std;
int main(void)
{
TestClass tc;
tc.main();
return 0;
}
testclass.h:
#ifndef \_testclass\_h\_
#define \_testclass\_h\_
class TestClass
{
public:
TestClass();
~TestClass();
int main();
};
#endif
testclass.cpp:
#include
#include "testclass.h"
using namespace std;
TestClass::TestClass()
{
cout
So weit, so gut. Wenn ich das ganze Kompiliere, bekomme ich Fehlermeldungen "undefined reference to `TestClass::TestClass()'" und "undefined reference to `TestClass::main()'". Es scheint so, als würden sich die cpp-Dateien gegenseitig nicht kennen. Binde ich die testclass.cpp per include in die main.cpp oder die testclass.h ein, funktioniert alles. Wobei letzteres ziemlich sinnlos ist, weil sich die zwei Dateien dann gegenseitig einbinden...
Kann es sein, dass es gar nicht an mir (oder an dem von mir erstellten Code) liegt, sondern an Geany? Ich habe über Projekt-\>Neu ein Projekt erstellt. Die Dateien werden ordnungsgemäß alle in der Registerkarte "Dokumente" aufgelistet.
Vllt. könnt ihr mir ja helfen...
Vielen Dank schonmal im Voraus für die Antworten.