ユーザー向けにいくつかのフォームを生成し、それらに入力させてから、シリアル化されるバイナリ検索ツリーにフォームを保存するQtGUIを作成しています。これは、Qt(明らかに)、c ++、およびboostを使用して行われます。現時点では、GUIがアプリケーションとの唯一のインターフェースです。メインのGUIクラス内で作成するのは悪いデザインパターンのようであるため、GUIの外部でバイナリ検索ツリーオブジェクトをインスタンス化したいと思います。これは正しい考えですか?
これが私のmain()
今です:
int main (int argc, char *argv[])
{
QApplication app(argc, argv);
ChocAnGui *gui = new ChocAnGui;
gui->show();
return app.exec();
}
ChocAnGui
クラスが使用できるが実際のGUIの外にあるBSTオブジェクトを作成する方法はありますか?私は次のようなことをしたいと思います:
int main (int argc, char *argv[])
{
MyBST bst = new MyBST;
MyRecord record = new MyRecord;
QApplication app(argc, argv);
ChocAnGui *gui = new ChocAnGui;
gui->show();
return app.exec();
}
MyBST
次に、GUIが内部からおよびMyRecord
クラスのメソッドを呼び出せるようにしたいと思います。アプリケーションの開始時と終了時にデータのシリアル化と逆シリアル化を行っているため、これは最も抽象的なアプローチのようです(GUIコード自体からのシリアル化と逆シリアル化とは異なります)。この質問が明確であることを願っています...私たちが話している間、私はこれらすべてのことを学んでいます。それらの変数を通過させる方法はありQApplication(argc, argv)
ますか?最終的には、レコードクラスとBSTクラスがデータベースに組み込まれ、GUIの外部でインスタンスを作成するのが最も簡単に思えます。あなたが提供できるどんな入力にも感謝します。