元对象系统主要是为了实现信号和槽机制才被引入的,不过除了信号和槽机制以外,元对象系统还提供了其他一些特性:
- QObject::metaObject()函数可以返回一个类的元对象,它是QMetaObject类的对象;
- QMetaObject::className()可以在运行时以字符串形式返回类名,而不需要C++编辑器原生的运行时类型信息(RTTI)的支持;
- QObject::inherits()函数返回一个对象是否是QObject继承树上一个类的实例的信息;
- QObject::tr()和QObject::trUtf8()进行字符串翻译来实现国际化;
- QObject::setProperty()和QObject::property()通过名字来动态设置或者获取对象属性;
- QMetaObject::newInstance()构造该类的一个新实例。
相关文章
暂无评论...