内外命名空间

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。


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

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


最新文章

  1. linux下截取整个网页
  2. 【原】webpack结合gulp打包
  3. VI编辑器学习笔记
  4. 第2章 rsync(一):基本命令和用法
  5. JS函数的参数声明中用 var 与不用 var的区别
  6. JAVA类的继承之多态特性
  7. windows许可证即将过期
  8. Linux学习笔记(一)----Ubuntu下的apt命令
  9. Cocos Creator学习三:生命周期回调函数
  10. spring boot apollo demo
  11. 定时调度任务quartz
  12. Java语法基础课 动手动脑
  13. wamp下配置多域名和访问路径的方法
  14. 线性表之顺序表C++实现
  15. WPF查找子控件和父控件方法
  16. silverlight——多次异步调用的顺序执行
  17. 饥饿的小易(枚举+广度优先遍历(BFS))
  18. [java] 简单的ConcurrentHashMap
  19. 事务处理笔记《一》ADO.NET级别的事务
  20. North American Invitational Programming Contest (NAIPC) 2017

热门文章

  1. cmake cpack 安装打包程序
  2. Wpf之HandyControls与MaterialDesign混用之DataGrid
  3. Codeup 25593 Problem G 例题5-7 求圆周率pi的近似值
  4. Xray安装与使用
  5. JMF 下载安装与测试 测试成功
  6. getline()和get()的使用区别
  7. WinForm:API
  8. 基础_TCP/IP
  9. JAVA的synchronized写法
  10. SpringCloud-Bus 消息总线