qt-declare-private
1. 模型
Example类
1 | class Example { |
ExamplePrivate类
1 | class ExamplePrivate { |
2. Q_DECLARE_PRIVATE 宏的展开
1 | // 定义 |
3. Q_DECLARE_PUBLIC 宏的展开
1 | // 定义 |
4. Q_D
1 | // 定义 |
5. Q_Q
1 | // 定义 |
6. 总结
Q_DECLARE_PRIVATE一般用于主类的XXXPrivate成员声明,而且声明为friend类型,可以让这个XXXPrivate类型成员方便的访问主类所有成员;Q_DECLARE_PUBLIC用于XXXPrivate类里面对主类的声明,也将主类声明为friend类型;在主类里面可以用Q_D访问XXXPrivate类型的指针,在XXXPrivate类里面可以用Q_Q访问主类指针