2012-01-09 13 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

相關問題