【问题标题】:Splitted namespace in header file头文件中的拆分命名空间
【发布时间】:2014-06-18 13:08:25
【问题描述】:

我目前正在处理一个现有的 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 声明有什么不同吗?我以前从没见过这个……

感谢您的帮助!

【问题讨论】:

  • 只是编码风格的问题,这个开发者希望在文件的开头有所有的前向声明,也许如果你在这个文件中有 4-5 个类,更容易找到什么您正在寻找。

标签: c++ namespaces


【解决方案1】:

不,根本没有功能上的区别。

显然,程序员喜欢将前向声明完全分开,现在我想这实际上有点风格上的意义。

【讨论】:

    猜你喜欢
    • 2010-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-09
    • 2011-07-06
    • 1970-01-01
    • 2018-04-28
    相关资源
    最近更新 更多