1. PImpl模式简介
PImpl,Pointer to Implementation,指向实现的指针。这是C++中一种常用的模式。严格说来,局限于指针形式,PImpl并不是一种设计模式,它只是C++编程语言的一种习惯用法。PImpl通过一个私有的成员指针,将指针指向的类的内部实现全部隐藏。如下图所示:
其中,头文件中需要对PImpl作前向声明,并保存一个私有的PImpl指针。在构造函数中初始化这个指针,在析构函数中释放该指针。当然,也可以使用智能指针。
在类A对外暴露的接口的实现中,比如A::getName()的实现,可以直接转为