C++ में क्लासेस की साइक्लिक डिपेंडेंसी के कारण कंपाइलेशन एरर कैसे ठीक करें?
सभी को नमस्ते! मैं C++ में एक सरल गेम लिख रहा हूँ और एक समस्या का सामना कर रहा हूँ जिसे मैं कई घंटों से हल नहीं कर पा रहा हूँ।
मेरे पास दो क्लासेस हैं: `Player` (खिलाड़ी) और `Enemy` (दुश्मन)। खिलाड़ी को दुश्मन पर हमला करने में सक्षम होना चाहिए, और दुश्मन को खिलाड़ी के बारे में पता होना चाहिए ताकि वह उसका पीछा कर सके। मैं ऐसा करने की कोशिश कर रहा हूँ कि प्रत्येक क्लास में दूसरी क्लास का pointer हो।
यहाँ सरलीकृत कोड है:
**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->hea