C ++ klasa, jej podstawowa klasa i okólnik obejmują [duplikat]

To pytanie ma już odpowiedź tutaj:

Rozwiąż błędy kompilacji z powodu cyklicznej zależności między klasami, es 9 odpowiedzi

FILE # 1 (foo.h):

#ifndef FOO_H_
#define FOO_H_
#include "baseclass.h"
#include "bar.h"
class Bar;
class Foo : public baseclass {
public:
bar *varBar;
};
#endif

FILE # 2 (bar.h):

#ifndef BAR_H_
#define BAR_H_
#include "foo.h"
class Foo;
class Bar {
public:
Foo *varFoo;
};
#endif

FILE # 3 (baseclass.h):

#ifndef BASECLASS_H_
#define BASECLASS_H_
#include "foo.h"
class Foo;
class baseclass {
public:
list<Foo*> L;
};
#endif

Ale pojawia się błąd kompilacji w pliku nr 1 w wierszuclass Foo : public baseclass:

Error: expected class-name before »{« token

Jeśli dodamclass baseclass; deklaracja klasy bevor, otrzymuję ten błąd:

Error: invalid use of incomplete type »struct baseclass«

Czy moje pytanie brzmi: jak rozwiązać zależności cykliczne za pomocą klas podstawowych?

Zapytaj, jeśli gdzieś nie dostaniesz. Próbowałem już zmienić kolejność dołączania nagłówków, ale jak dotąd nie miałem szczęścia. Dzięki za podpowiedź.

EDYCJA: Uwaga: Używam włączników strażniczych EDIT2: Nie ogranicza się to do wskaźników, więc usuwam je na wszelki wypadek. EDIT3: Dodano klasę podstawową (zapomniałem O.o) EDIT4: Teraz powinno być jasne i bez żadnych wad problem nadal występuje z tym kodem.

questionAnswers(5)

yourAnswerToTheQuestion