Qt在C++标准的基础上添加了一些特性,也即属于Qt自己的核心技术。这些核心技术在Qt Core模块中实现。这些特性主要包括:
- 非常强大的无缝连接通信机制,称为信号和槽;
- 可查询和可设计的对象属性;
- 层次化并可查询的对象树;
- 用保护指针(QPointer)通过很自然的方式实现对象的所有权管控;
- 跨库工作的动态投射;
一、元对象系统(The Meta-Object System)
Qt的元对象系统提供了 对象之间通信的信号和槽机制、运行时的类型信息和动态属性系统。元对象系统基本构成为:
1.QObject类。该类是所有元对象系统类的基类。
2.Q_OBJECT宏。在类的成员变量开始的地方声明该宏,就可以使这个类具有元对象的特性,如动态属性和信号与槽。
3.元对象编译器(MOC)。MOC工具在编译时,将含有Q_OBJECT宏的类解释为标准C++源文