You can avoid a circular include problem by using a forward declaration of a class instead of an #include
:
#ifndef ENTRANCE_H
#define ENTRANCE_H
#include <vector>
#include "Diodio.h"
class Segment;
class Entrance
{
public:
Entrance();
~Entrance();
void operate();
protected:
Segment *givesEntryTo;
std::vector<Diodio> elBooths;
std::vector<Diodio> manBooths;
private:
};
#endif // ENTRANCE_H
(Entrance.cpp may or may not need to #include "Segment.H"
then.)
solved “does not name a type” error c++ [duplicate]