0

「SeasonCreator」というQtウィジェットプロジェクトがあり、Qtウィジェットプロジェクトの構造について疑問に思っています。

ui_seasoncreator.hファイルは非表示になっていますが、このファイルを調べると、「Ui」という名前空間が定義されており、cであるUi_SeasonCreatorを継承するSeasonCreatorクラスの宣言が含まれています。

seasoncreator.hファイルには、「SeasonCreator」というクラスの宣言もある「Ui」という名前空間もあります。クリックして元の宣言を見つけると、ui_seasoncreator.hファイルのUi::SeasonCreatorの宣言に移動します。

これらの名前空間とクラスの目的は何ですか?2つの定義は関連していますか?

これらのUi::SeasonCreator宣言のいずれかは、seasoncreator.hのカスタムSeasonCreatorクラスと関係がありますか?

4

1 に答える 1

3

これらの名前空間とクラスの目的は何ですか?

ui_XXX.h のコードは、デザイナーを使用してフォームを作成するときに自動的に生成されるコードです。これは Ui 名前空間に配置されます。

2 つの定義は関連していますか?

次のようなものを指していると思います。

namespace Ui { class SeasonCreator; }

これは、生成されたコードの一部であるクラスの前方宣言であり、カスタム フォーム内のウィジェットへのアクセスをクラスに提供します。

これらの Ui::SeasonCreator 宣言のいずれかが、seasoncreator.h のカスタム SeasonCreator クラスと関係がありますか?

これは、カスタム コードと生成されたコードをリンクするものです。Ui::SeasonCreator *uiおそらく、生成された Ui クラスにアクセスするために使用するオブジェクトであるというカスタム クラスのメンバー変数が必要です。

于 2012-08-14T02:19:14.817 に答える