I have two classes, Board and PuzzleSearch. Both contains a private enum named MOVE_DIRECTIONS with the same values MOVE_UP, MOVE_DOWN, MOVE_RIGHT and MOVE_LEFT. The enum in board is used to move tiles based on player input and the one in PuzzleSearch are used for generating a solution sequence to the puzzle. When the solution has been generated I want to return it from the PuzzleSearch class to the Board class. The solution is stored in a vector like this:
std::vector<MOVE_DIRECTIONS> solution;
Problem is I cannot write this line in the Board class:
I have the classes in different header files and I don't want to include one inside the other just to get access to the public enum. Any other solutions?