是否使用命名空間以及文件夾來組織代碼矯枉過正?是否使用命名空間以及文件夾來組織代碼矯枉過正?
例子:
Folder Structure:
Engine (Root)
--Audio
--Exceptions
--Game
--GFX
--Input
--Math
--Messages
--Physics
--Time
--[global headers]
所有的類都包含在一個命名空間[root]::
防止碰撞與std::
和第三方代碼。 Math文件夾包含[root]::Math::
名稱空間中包含的一些幫助程序(免費)函數的頭文件,並且在[root]::AudioHandler::
名稱空間中Audio具有一些更多的幫助程序(免費)函數。
我應該將每個文件夾中的類放入類似描述的命名空間嗎? (即Physics文件夾中的類也將位於[root]::Physics::
名稱空間中。)
是的,它是過度的。你會厭倦寫非常快的命名空間。想象一下,每次寫入'root :: Math :: vector3f'。 – yngccc 2013-04-23 03:21:13
作爲記錄,visual studio c#將其作爲其標準功能的一部分。有時很煩人,當我想要解決方案文件夾,但沒有名稱空間的變化。 – 2013-04-23 03:23:39
@yngum這就是'使用名稱空間'和名稱空間別名派上用場的地方 - 如果明智地使用。 – 2013-04-23 03:25:07