一种类的封装方法

类与私有类

为了使动态库最大程度上实现二进制兼容(个在老版本库下运行的程序,在不经过编译的情况下,仍然能够在新的版本库下运行),应该使其数据模型保持不变,一个可行的方法是构造其私有类,在私有类中储存其成员变量,其数据模型保持为其私有类的指针不变;将私有类定义在.cpp中,可对外隐藏其成员变量。c++界面库Qt就是基于这种思想实现了类的封装。

一种类的封装方法

                                                                                 图1 宏定义声明

一种类的封装方法一种类的封装方法

                                                                                图2 公有类基类与私有类基类

 

一种类的封装方法

一种类的封装方法

                                                                               图3 公有类与私有类