I'm writing something in C++. I have 2 classes which I want to contain one into the other as in the folowing (these are just the header files):
//Timing.h
#ifndef _Timing_h
#define _Timing_h
#include "Agent.h"
class Timing{
    private:
        typedef struct Message{
            Agent* _agent; //i get here a compilation problem
            double _id;
        } Message;
        typedef struct MessageArr{
        } MessageArr;
    public:
        Timing();
        ~Timing();
};
#endif
//Agent.h
#ifndef _Agent_h
#define _Agent_h
#include <string>
#include "Timing.h"
using namespace std;
class Agent{
    public:
        Agent(string agentName);
        void SetNextAgent(Agent* nextAgent);
        Agent* GetNextAgent();
        void SendMessage(Agent* toAgent, double id);
        void RecieveMessage(double val);
        ~Agent();
    private:
        string _agentName;
        double _pID;
        double _mID;
        Agent* _nextAgent;
};
#endif
The compilation error is in the Timing.h file inside the definition of the struct:
expected ';' before '*' token
What am I doing wrong?
 
     
     
     
     
     
    