I have Environment.h file:
#include
#include \"interfaces.h\"
#ifndef ENVIRONMENT_H
#define ENVIRONMENT_H
class Environment {};
#endif
<
For circular dependencies one can use Forward declaration(s)
In Interfaces.h just above interface definition, forward declare Environment
as follows:
class Environment;
Then when you implement IMoving in a class, you will include Environment.h in its implementation file.
You can read more about Forward declaration here.