是否使用命名空间以及文件夹来组织代码矫枉过正?是否使用命名空间以及文件夹来组织代码矫枉过正?
例子:
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