私は一種の初心者であり、c++で主にグローバル関数とvoid関数を使用する10000行のプログラムを書き始めました。
とにかく、私のプログラムにはGUIがないので、Clutterを使用してGUIを作成しています。そのため、雑然とすると、信号処理機能を使用して、ボタンのクリックやモーションイベントなどを接続します。
信号処理機能は、1つのユーザーデータパラメータのみを受け入れることができます。ただし、GUIの多くのコンポーネントでは、さまざまな機能から数百にアクセスする必要があります。したがって、すべてのGUIオブジェクトを単一の構造体に配置し、すべての信号処理関数から渡します。
だから私のプログラムは今のところ、(コンソールプログラム)は何かをするためにいくつかの文字を押して印刷します。その文字を押すと、特定の機能を起動します。グローバルの使用を排除する場合、これらの変数のいくつかをパラメーターとして渡す必要があります。
コードをGUIに直接挿入すると、シグナルハンドラー関数は適切な関数を起動しますが、渡すことができるのは1つのユーザーデータパラメーターのみです。これは、現在のように、数百のGUIメンバーを持つ構造体として既に使用されています。
申し訳ありませんが、これがすべておかしなことに聞こえる場合。より良い方法を使用するためにコードを書き直そうとしているだけですが、10000の長いコードといくつかのことについての理解の欠如により、私はかなり圧倒されていると感じています。
GUIに接続することで認識しているこの問題のどこから始めて、どのように対処するかについてのアドバイスを探しています。
そして、構造体についての私の質問です。構造体内に含めることができる要素の最大数があるかどうかを知りたいです。構造体内に配列がある場合、その配列へのアクセス時間は遅くなりますか?構造体のメモリの処理方法に違いはありますか?
ありがとう。