Dear friends:
I have the following two classes.
#ifndef EQUATION_H
#define EQUATION_H
#include <stdlib.h>
#include <map>
class Mesh;
class Equation {
public:
Equation();
virtual ~Equation(){};
void associateMesh(Mesh * _pMesh){ pMesh = _pMesh;};
virtual void addsItsVariables4PostProcessing(map<string,const Variable*> & variablesMap)=0;
protected:
string name;
const Mesh* pMesh; };
#endif
Before the class Equation, there are a pre declare of class mesh. I do not understand why not to use a include to include the head file of Mesh class, what is the difference.
In the class member function "addsItsVariables", it use a paramter "map<string,const Variable*>" which is not the class member, is this illegal?
Regards