Как сделать так, чтобы один C-шный файл юзал другой, а другой наоборот первый? Вот пример, но он на GCC не компилится:
#ifndef __A__ #define __A__
class A; //Здесь выдается ошибка "forward declaration of A"
#include "B.h"
class A { B* b; };
#endif
-----------------------------------------
#ifndef __B__ #define __B__
class B;
#include "A.h"
//Здесь выдается ошибка "undefined type A" class B : public A { };
#endif