Home · All Classes · Main Classes · Grouped Classes · Modules · Functions

Qt Object Model

The standard C++ object model provides very efficient runtime support for the object paradigm. But its static nature is inflexibile in certain problem domains. Graphical user interface programming is a domain that requires both runtime efficiency and a high level of flexibility. Qt provides this, by combining the speed of C++ with the flexibility of the Qt Object Model.

Qt adds these features to C++:

Many of these Qt features are implemented with standard C++ techniques, based on inheritance from QObject. Others, like the object communication mechanism and the dynamic property system, require the Meta-Object System provided by Qt's own Meta-Object Compiler (moc).

The Meta-Object System is a C++ extension that makes the language better suited to true component GUI programming. Although templates can be used to extend C++, the Meta-Object System provides benefits using standard C++ that cannot be achieved with templates; see Why Doesn't Qt Use Templates for Signals and Slots?


Copyright © 2007 Trolltech Trademarks
Qt 4.2.3