This chapter introduces the idea of reflection, the self-examination of an object’s members. Using reflective programming, you can write general-purpose operations that work on classes of varied structures. Using
QVariant, a generic value-holder, you can operate on built-in types and other common types in a uniform way.
A meta object is an object that describes the structure of another object.1
A class that has a MetaObject ...