【发布时间】:2020-09-02 03:54:06
【问题描述】:
我的项目分为模块,它们都具有相似的结构,而不是编写EntityHandler 和InputHandler 之类的类,我想使用命名空间并执行Input::Handler 和Entity::Handler。现在这一切对我来说似乎都很好,但是这些命名空间也嵌套在另一个命名空间中,该命名空间也有一个 Handler 类!
有些人说这是不好的做法,可能会造成混淆,但作为我风格的一部分,我从不使用 using <namespace>; 关键字,所以它总是看起来很明确。你认为这是一个好的做法吗?如果不是,你能告诉我这会在哪里反过来咬我吗?
很抱歉,如果以前有人问过这个问题,我看过的地方没有很好地解释为什么或为什么不这样做!
【问题讨论】:
-
如果命名空间的唯一目的是通过提供前缀来命名某些类:别这样。
-
嗯,它更多的是为我的项目中的不同模块共享类名,例如我有 Entity::Handler、Entity::Instance、Entity::Tags 等......每个模块都有一个命名空间和相同的类名,这会变坏吗?
-
请评论@MichaelUshakov的回答。
标签: c++ namespaces