Hallo mal wieder.
Ich hab mal wieder ein triviales aber nerviges Problem mit C++: Ich habe zwei Klassen (jeweils mit header und c file). Reduziert sehen die beiden etwa so aus:
------ca.h--------
#include "cb.h"
class CA {
CB* other;
...
}
------cb.h--------
#include "ca.h"
class CB {
CA* other;
...
}
Die ... ersetzen Konstruktor, Destruktor und die eigentliche Funktionalität.
Das Problem ist jetzt das C++ beim Compilieren von CA, wg. include, CB übersetzt wird und darin findet es dann die Referenz auf CA, die aber noch nicht übersetzt wurde.
Ich hab schon alles mögliche mit extern und typedef ausprobiert, aber ich find die Richtige Syntax einfach nicht.
Danke für die Antworten
Dreamforger
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
Ganz anderer Lösungsansatz:
Du erstellst eine Klasse, von der sich Deine beiden genannten ableiten. Als Referenz mußt Du dann jedesmal die Basisklasse eintragen, durch die Pointer kannst Du dann jedesmal auf das entsprechende Objekt zugreifen:
Class CBasis
{
...
}
Class CA : CBasis
{
cb *CBasis;
...
}
Class CB : CBasis
{
ca: CBasis
...
}
PS: Ich komme im Moment nicht auf die Fachwörter, sonst könnte ich Dir damit weiterhelfen