pimpl 惯用法

IOBUFFER • 编程技术
•

pimpl 即 Private Implementation(Pointer to Implementation。

通过一个私有的指针,指向类的内部,以实现类的核心数据的隐藏。

pimpl的优点

  1. 隐藏类的核心数据成员和私有函数。
  2. 可加快编译的速度,例如一些复杂的类,引用该类的地方很多,每个引用的地方都要引入头文件
      便会增加编译时间,这种方式,将实现放在了cpp文件中,其他地方在引入这个头文件的时候,
      依赖的类型变少,编译的速度加快。
  3. 接口和实现分离,我们导出的头文件,仅仅包含一个pimpl的指针,当我们对pimpl类进行修改时
      导出的头文件不需要修改。

一个简单的实例

喵~