Las referencias cruzadas incluyeron encabezados en el programa c ++

Tengo curiosidad por un escenario como el siguiente ejemplo:

Aquí está el código que se colocaría en un archivo llamado Header1.h:

#ifndef HEADER1_H
#define HEADER1_H

#include "Header2.h"

class Class1
{
 Class2 class2Instance;
};

#endif

Aquí está el código que se colocaría en un archivo llamado Header2.h:

#ifndef HEADER2_H
#define HEADER2_H

#include "Header1.h"

class Class2
{
 Class1 class1Instance;
};

#endif

Recibo mensajes de error cuando hago esto (debido a las inclusión que asumo), pero siento que tendría que hacer esto para incluir cada uno de los objetos en las clases separadas. ¿Alguien puede ayudarme a lograr esto? ¿Qué estoy haciendo mal?

Respuestas a la pregunta(5)

Su respuesta a la pregunta