ヘルス クラブのシミュレーションを実行するアプリケーションを C++ で作成しています。ユーザーは最初にシミュレーション データ (3 つの整数値) を入力し、実行を押します。その後、ユーザー入力はありません - とても簡単です。
シミュレーションを開始した後、多くのロジックは下位クラスの奥深くにありますが、それらの多くは単純な出力メッセージを UI に出力する必要があります。オブジェクトは UI に出力する必要がありますが、動作し続ける必要があるため、メッセージを返すことはできません。
UI オブジェクトへの参照を、それを必要とするすべてのクラスに渡すつもりでしたが、かなりの数の参照を渡すことになりました。もっと良い方法があるはずです。
私が本当に必要としているのは、UI の printOutput(string) 関数を cout << string; と同じくらい簡単に (またはそれほど難しくなく) 呼び出すことができるものです。
UI には、displayConnectionStatus(bool[] connections) メソッドもあります。
UI は抽象的な「UserInterface」クラスを継承するため、単純なコンソール UI と GUI を簡単に変更したり変更したりできることに注意してください。
このリンクを UI に実装する方法を教えてください。
グローバル関数を使用する場合、使用するように選択した UserInterface 実装のメソッドを呼び出すようにリダイレクトするにはどうすればよいですか?