2017-02-23 28 views
1

私はC++ソケットプログラミングの新人で、特定のプロトコル用のライブラリを作成しています。オープンソケット接続を返す/ソケット接続を開いたままにするC++

は私がQuick_Connect(ホスト名、ポート)と呼ばれる機能を持っているクラスがあり、そして私は、ライブラリを使用している場合は、次のようなものをやって行くだろう方法を考え出すのトラブルに遭遇しました:

ClassName.Quick_Connect(); 
ClassName.SomeOtherMethod(); 

Quick_Connect()で作成されたオープンソケットにプロトコルメッセージを送信するメソッドがあります。

申し訳ありませんこれはばかげた質問ですが、私はかなり新しい+ +と低レベルのネットワーキングです。これが可能かどうか、あるいは現在のコードの構造を見直す必要があるかどうかはわかりません。

答えて

1

あなたのクラスのメンバー変数を使用できます。クラスのソケットメンバーを定義し、Quick_Connectにこの変数を設定するだけです。

その後、他の方法で使用することができます。それはあなたのオブジェクトの中にラップされます。

class Protocol 
{ 
public: 
    Quick_Connect() 
    { 
     m_Socket = CreateSocket(); 
    }; 

    SomeOtherMethod() 
    { 
     if (m_Socket) 
     { 
      // use your m_Socket for sending data.  
     } 
    }; 

private: 
    Socket m_Socket; 
}; 
+0

ありがとう! :)、これは動作します。どのように私はそれを考えていないか分からない。 –

関連する問題