C++ / Doxygen: Problem mit Warnung !?

Hallo Experten,

ich versuche gerade Doxygen bei mir zum laufen zu bekommen und bekomme für eine Klasse bei mir immer die Fehlermeldung:

  • Warning: documented function `CTest::CTest’ was not declared or defined.
  • Warning: documented function `CTest::~CTest’ was not declared or defined.

Immer die gleiche Fehlermeldung, dabei ist die Klasse inklusive aller Funktionen und Methoden angelegt und deklariert:

class CTest : public QObject
{
Q_OBJECT

public:
CComBackend(); // constructor
~CComBackend(); // destructor


}

Und so geht es weiter mit allen Funktionen, Member Variablen usw. Bei allen anderen Klassen gibt es keine Probleme und diese sind gleich aufgebaut. Hat jemand eine Idee, woran dies liegen könnte?

Vielen Dank schon im Voraus für Eure Hilfe.

Viele Grüße,
Thomas

Hallo Thomas

  • Warning: documented function `CTest::~CTest’ was not
    declared or defined.

Ich könnte mir vorstellen, dass da eine *.cpp dazu fehlt, oder eine Lib-Datei.

Sollte das hier nicht so aussehen:

class CTest : public QObject
{
 public:
 CTest(); // constructor, heisst so wie die Klasse
 ~CTest(); // destructor, dito
}

CTest::CTest() :
 QObject(/\*init\*/)
 {}

???

Einen Geheimtipp hätte ich noch: immer schreiben, welches System und welchen Compiler du benutzt, die haben jeder ihre „Vorlieben“. Wenn du den Code in pre-Marken setzt, so wie hier, ist der auch besser leserlich.

lG
Martin B

Hallo Martin,

danke für die Tipps, dann liefere ich doch gleich mal die ersten Antworten :wink:. Ich arbeite unter WinXP mit Cygwin (gcc) und Eclise.

Interessanterweise ist die cpp vorhanden, er wirft trotzdem die Fehler. Dies kommt auch nur bei einer Klasse vor, bei allen anderen ist dies nicht der Fall und alle sind gleich aufgebaut. Verstehe einfach nicht, wo das Problem liegen könnte!

Viele Grüße,
Thomas

Hallo Thomas

Interessanterweise ist die cpp vorhanden,

Sieh mal nach, ob die *.cpp auch eine Include-Anweisung mit der gleichnamigen *.h oben drin hat.
Und ob die nötigen Implementationen von Ctor und Dtor vorhanden sind.
Ob in der *.h die Deklarationen vorhanden sind.
Die *.cpp ist auch im Projekt eingebunden?

Warning: documented function `CTest::CTest’ was not declared or defined.

Der Fehler kann nur heissen, dass entweder:
der Prototyp fehlt („not declared“), oder
der Code fehlt („not defined“).
Anders kann ich mir das nicht erklären.

lG
Martin B

Hallo Martin,

Sieh mal nach, ob die *.cpp auch eine Include-Anweisung mit
der gleichnamigen *.h oben drin hat.

Ist vorhanden.

Und ob die nötigen Implementationen von Ctor und Dtor
vorhanden sind.

Sind auch vorhanden.

Ob in der *.h die Deklarationen vorhanden sind.
Die *.cpp ist auch im Projekt eingebunden?

Ist im Projekt eingebunden.

Anders kann ich mir das nicht erklären.

Ich mir leider auch nicht!

Trotzdem vielen Dank für Deine Hilfe und die Tipps. Sehr nett vorn Dir!

Viele Grüße,
Thomas