Em có viết 1 class DoorState:
#ifndef LOCKEDSTATE_H_
#define LOCKEDSTATE_H_
#include "DoorState.h"
class Door;
class LockedState : public DoorState {
public:
LockedState();
virtual ~LockedState();
virtual void unlock(Door* door);
};
#endif /* PAUSEDSTATE_H_ */
lúc em gọi lớp này trong file header của lớp khác thì bị lỗi.
Còn khi em khai báo thế này thì không sao
#ifndef DOOR_H_
#define DOOR_H_
class DoorState;
class Door {
public:
Door();
virtual ~Door();
void unlock();
void lock();
void close();
void open();
void SetState(DoorState* state);
private:
DoorState* m_pState;
};
Mọi người cho em hỏi vì sao lại vậy ạ?