头文件中的分割命名空间

时间:2014-06-18 13:08:26

标签: c++ namespaces

我目前正在开发一个现有的c ++项目。

在代码分析过程中,我发现头文件包含两个部分(见 c1.h )。第一部分包含前向声明,第二部分包含类声明。

c1.h

namespace a { namespace b {
    class c2;
    class c3;
}} 

namespace a { namespace b {
    class c1
    {
        public:
            //...
        private:
            //...
    };
}}

c1_foo.h

namespace a { namespace b {
    class c2;
    class c3;

    class c1_foo
    {
        public:
            //...
        private:
            //...
    };
}}

我的问题:

有没有理由把它分成两个逻辑部分? c1_foo.h 声明有什么不同吗?我以前从未见过这个......

谢谢你的帮助!

1 个答案:

答案 0 :(得分:1)

不,根本没有功能差异。

显然,程序员喜欢将声明完全分开,这实际上是因为我认为它具有风格意义。