私はこのwebsocket ++の例を解読しようとしていますhttps://github.com/zaphoyd/websocketpp/blob/experimental/examples/broadcast_server/broadcast_server.cppstd :: set <VALUE、std :: owner_less <VALUE>>の目的は何ですか?
ライン126では、typedef std::set<connection_hdl,std::owner_less<connection_hdl>> con_list;
があります。なぜそれが単にtypedef std::set<connection_hdl> con_list;
ではないのだろうと思っています。
私はHow does the Comma Operator workとhttp://en.cppreference.com/w/cpp/memory/owner_lessを読んだことがありますが、その目的が分かりません。
実際にはstd::set
には何が格納されていますか? std::owner_less
は実際に何をしていますか? connection_hdl
自体を格納するのではなく、この構造のコンテナを作る目的は何ですか?
これはコンマ演算子とは関係がなく、 'std :: owner_less'のためにリンクしたページはあなたの質問に直接答えなければなりません。 – ildjarn
'std :: set'は複数のテンプレートパラメータをとりますが、最初のものだけが明示的に必要です。残りの部分には、定義していない場合はデフォルトの型があります。 2番目のパラメータは、ソートに使用されるバイナリ関数です。 –
ところで、 'connection_hdl'は' std :: weak_ptr 'です。 –