Допустим, у меня есть заголовочный файл Snake.h:
#include "SnakeBodyPart.h"
#include "GUI.h"
//...
И SnakeBodyPart.h (среди прочего):
#include "GUI.h"
class SnakeBodyPart {
private :
GUI::Orientation orientation;
}
И, наконец, GUI.h:
class GUI {
enum Orientation { NORTH, EAST, SOUTH, WEST };
}
Теперь в Snake.cpp я хочу сделать следующее:
void Snake::turn(){
if(bodyPart.getOrientation() == GUI::EAST){
//do something
else if (bodyPart.getOrientation() == GUI::SOUTH){
//do something
else if ...
}
Я думаю, вы поняли. Что я хотел бы знать, это: можно ли установить пространство имен для одного метода? Как и присвоение GUI пространства имен для Snake::turn
, поэтому я могу просто набрать bodyPart.getOrientation() == EAST
?
У меня есть несколько перечислений с различными пространствами имен в Snake.cpp, и я хотел бы сделать код более читабельным, предоставляя определенным методам определенные пространства имен, а не просто одно пространство имен для Snake.cpp. Это возможно?