Return to Linux Life Edit

  ホーム · 全てのクラス · メインのクラス · 注釈付き · グループ別 · 関数一覧

QTオブジェクトモデル

Standard C++ のオブジェクトモデルでは、枠組みとして効率を重視したランタイムを提供しています。しかし、この静的な世界はある問題領域にとって柔軟性に乏しいものです。GUIプログラミングは効率の良いランタイムと高位の柔軟性の両方が要求される領域です。Qt は C++ のスピードとQt オブジェクトモデルの柔軟性を結合することでこの要求を満たそうとしています。

Qt は以下のような機能を C++ に追加しています。

これらの Qt の特長のうち多くは Standard C++ を用いて、 QObjectを基底クラスとして継承することで実装されています。残りの、オブジェクト同士のやり取りの機構や、動的なプロパティシステムのような機能は Meta-Object System が必要で、そのために Meta-Object Compiler (moc)を Qt 自身で提供しています。

この Meta-Object System は C++ の拡張となっており、真のコンポーネントGUIプログラミングに適合させるものです。この拡張された C++ ではテンプレートを使用することも可能ですが、Meta-Object Systemは Starndard C++がテンプレートをもってしても到達できないような利点を持っています。詳細については {Why Doesn't Qt Use Templates for Signals and Slots?} を参照してください。


Copyright © 2005 Trolltech Trademarks
Qt 4.0.0