Avatar ·

Como corrigir erros de compilação devido a dependência cíclica de classes em C++?

Olá a todos! Estou escrevendo um jogo simples em C++ e me deparei com um problema que não consigo resolver há várias horas. Tenho duas classes: `Player` (jogador) e `Enemy` (inimigo). O jogador deve ser capaz de atacar o inimigo, e o inimigo deve saber sobre o jogador para persegui-lo. Estou tentando fazer com que cada classe contenha um ponteiro para a outra classe. Aqui está o código simplificado: **Player.h:** ```cpp #ifndef PLAYER_H #define PLAYER_H #include "Enemy.h" class Player { public: void attack(Enemy* e); int health; }; #endif ``` **Enemy.h:** ```cpp #ifndef ENEMY_H #define ENEMY_H #include "Player.h" class Enemy { public: void chase(Player* p); int health; }; #endif ``` **Player.cpp:** ```cpp #include "Player.h" void Player::attack(Enemy* e) { e->health -= 10; } ``` **Enemy.cpp:** ```cpp #include "Enemy.h" void Enemy::chase(Player* p) { // lógica de perseguição } ``` Quando tento compilar, o compilador exibe erros como