0

Listner クラスに char commBuffer[BUFFER_SIZE] として実装されている通信バッファーがあります。

各クラスがこの構造を持つ代わりに、すべてのクラスで共有される通信バッファを作成し、バッファへのポインタだけを渡す最良の方法は何ですか?

4

2 に答える 2

0

このようなもので、スレッド化されている場合は、ミューテックスを使用してアクセスを制御します。

class Listener {
    static char commBuffer[BUFFER_SIZE];
    static boost::mutex mutex;
};
于 2012-11-28T20:28:22.603 に答える
0

最も簡単なcommBuffer[BUFFER_SIZE];方法は、 globalを宣言することです。道がよくわかりませんbest。しかしbest、あなたの場合、easiest私はグローバル宣言に固執することを意味します。純粋にオブジェクト指向のままにしたい場合は、 をクラスに入れ、char commBuffer[BUFFER_SIZE]データSingletonを読み書きします。

于 2012-11-28T17:48:16.663 に答える