2012-01-09 10 views
0

下面是一个例子(不是我正在做什么,但希望得到的重点)。使用嵌套命名空间的可读性,一个坏主意?

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

如果你问五名款软件开发人员他们是怎么想的命名空间应组织,你会得到不下7不同的答案。 – 2012-01-09 03:49:40

+0

嵌套名称空间很常见,既不“好”也不“坏”。命名空间只是语法糖(尽管有用的糖),并且由工程师明智或愚蠢地使用它们。 – 2012-01-09 03:56:33

+0

显然属于*程序员*(如果有的话)。 – bitmask 2012-01-09 04:24:58

回答

1

好评詹姆斯:-)

个人而言,我喜欢他们,因为我从来没有使用“使用”的声明。这恕我直言,这使得代码更易读,你可以立即看到这个功能驻留等

int price=StockExchange::CME::GetPrice(); 
Database::Mysql::StorePrice(price); 
+2

'另类::它::手段::那::你::可::结束::向::扣:: ::可笑::长::名::那::使::你::代码::真的::宽()'。 – 2012-01-09 03:58:37

+0

程序员有一个把好功能变坏的诀窍:-)虽然终端> 80,可调节窗口,24“宽屏幕显示器成为标准,但宽度变得越来越小。 – 2012-01-09 04:08:55

相关问题