私のプロジェクトには 3 つのクラスがあります。それらを MainWindow 、 ProcessUserInput、 InitialUIPreparer と呼びましょう。
MainWindow の仕事は、ボタン、テキスト、コンボボックスなどを介してユーザーと対話することだけです。
ProcessUserInput は、MainWindow と calc から取得した値を使用して何らかの計算を行います。終了すると、処理されたデータが MainWindow に返されます。
また、InitialUIPreparer は、MainWindow に描画する必要があるいくつかの図形の場所を計算します。座標を渡すだけで描画しません。ただし、ウィンドウサイズなどのデータも取得する必要があります..
OK 問題は、 MainWindow が各クラスからデータを取得する必要があり、クラスが MainWindow からデータを取得する必要があるように始まります。これは循環依存につながります。MainWindow.h を "ProcessUserInput" と "InitialUIPreparer" に含めることで問題を解決します。しかし、「class ProcessUserInput」や「class InitialUIPreparer」のように、MainWindow で前方宣言を使用するだけです。
もちろん、まだ開発を続けることができます。しかし、私の場合、前方宣言が何度も必要な場合と同様に、設計が悪いかどうかを示していますが、将来のプロジェクトのために設計を再検討する必要がありますか?