-OOP限定-プログラム設計相談室
■ このスレッドは過去ログ倉庫に格納されています
0326デフォルトの名無しさん
2009/05/11(月) 23:31:23今考えてるもので、なんか結局相互依存しちゃうクラス関係orz。
今考えてるのは、ネットワークプログラミングで、
コネクションを表すclass Connectionがあって、これをベースに
class ServerConnection, class ClientConnectionがある。
で、こいつらを一つにまとめておくコンテナで、
class ConnectionManager;
というものを作った。
最初に、
ConnectionManager ConnMgmt;
ServerConnection SConn( ConnMgmt );
とかやって、
//コンストラクタで自分を登録
ServerConnection::ServerConnection( ConnMgmt ){ ConnMgmt.Add( this ); }
void ServerConnection::Accept(){
//ここで、サーバーソケットに接続してきたクライアント用のインスタンスを生成
ClientConnection *CConn = new ClientConnection( Socket_.Accept() );
//で、このクライアントコネクションをコネクションマネージャに登録するのに、
ConnMgmt_.Add( CConn );
}
みたいな、ConnectionManager <-> Connectionで相互依存っぽい気がする。
何か解決方法はないっすかね?
■ このスレッドは過去ログ倉庫に格納されています