qt creator源码全方面分析(4-3)

ぃ、小莉子 提交于 2020-05-08 12:24:43

内外命名空间

QtCreator源码中,每一个子项目都有内外两层命名空间,一个是外部的,一个是内部的。

示例如下

namespace ExtensionSystem {

namespace Internal {
    class IPluginPrivate;
    class PluginSpecPrivate;
}

class EXTENSIONSYSTEM_EXPORT IPlugin : public QObject
{
    ...
};

} // namespace ExtensionSystem

其中

  1. ExtensionSystem是外部的,其中的类等内容会被EXTENSIONSYSTEM_EXPORT导出,用户使用时可见。

  2. ExtensionSystem::Internal是内部的,定义的都是内部私有类(参考公有私有类),不进行导出。譬如前置声明中的IPluginPrivate。


原创造福大家,共享改变世界

献出一片爱心,温暖作者心灵


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!