下面是一个例子(不是我正在做什么,但希望得到的重点)。使用嵌套命名空间的可读性,一个坏主意?
namespace SDL{
namespace Surface{
void blit(SDL_Surface *src, SDL_Surface *dest);
}
namespace Audio{
Mix_Chunk* load_sound(const char *file);
}
namespace Color{
SDL_Color mix(int r, int b, int g);
}
}
我不害怕名称冲突,因为我自己写这一切,但为了可读性 - 我认为这更清楚。这会被认为是不好的做法吗?在SDL名称空间内的所有内容更好?哪个被认为是更好的风格?
如果你问五名款软件开发人员他们是怎么想的命名空间应组织,你会得到不下7不同的答案。 – 2012-01-09 03:49:40
嵌套名称空间很常见,既不“好”也不“坏”。命名空间只是语法糖(尽管有用的糖),并且由工程师明智或愚蠢地使用它们。 – 2012-01-09 03:56:33
显然属于*程序员*(如果有的话)。 – bitmask 2012-01-09 04:24:58