Overlapping Headerfile Includes
-
Hallo zusammen
Ich als c++ anfänger, brauche sehr dringend Hilfe, weil ich bei einem problem angstossen bin , das ich mit meinem Wissen und nachforschungen nicht lösen konnte:
Habe zwei KLASSEN, myclass1, myclass2
jede klasse braucht headerfiles von der anderen klasse weil, sich in jeder klasse ein pointer mit type der anderen klasse befindet.Das problem, der scheiss compiliert nicht (AUF WINDOWS, mit VISUAL STUDIO), ich muss das so machen, was muss geändert werden damit das so funktioniert?
namespace?? wie wozu?
BESTEN DANK!! Für jede nützliche Antwort!
Gruss Gabriel
myclass1.h
#ifndef CLASS1 #define CLASS1 #include "myclass2.h" class myclass1 { public: myclass2 * ptr_myclass2; void fun(); }; #endifmyclass2.h
#ifndef CLASS2 #define CLASS2 #include "myclass1.h" class myclass2 { public: myclass1 * ptr_myclass1; void fun(); }; #endifmyclass1.cpp
#include "myclass1.h" #include <iostream> using namespace std; void myclass1::fun(){ cout << "myCLASS1:FUN"<<endl; return; }myclass2.cpp
#include "myclass2.h" #include <iostream> using namespace std; void myclass2::fun(){ cout << "myCLASS2:FUN"<<endl; return; }main.h
int main (int argc, char *argv[]) { myclass1 myclass1instance; myclass2 myclass2instance; system("pause"); }
-
Stichwort:
Vorwärtsdeklaration, bzw. Forward declarationSollte genügend Beiträge im Forum geben. Hat auf der englischen Wikipedia glaub ich sogar einen Eintrag

Grüssli