ブーストasioを使用して、ソケットを特定のポートにバインドしようとしていますが、サーバーに接続するまでバインドは正しいです。
socket.open(tcp::v4(), ec);
socket.set_option(tcp::socket::reuse_address(true),ec);
socket.bind(tcp::endpoint(tcp::v4(), port_client), ec);
.
.
cout <<"before connect:"<<socket.local_endpoint().address().to_string()<<":"<<socket.local_endpoint().port()<<endl;
ポートはこの時点までは問題ありませんが、サーバーに接続すると:
boost::asio::connect(socket, endpoint_iterator,ec);
.
cout <<"after connect:"<<socket.local_endpoint().address().to_string()<<":"<<socket.local_endpoint().port()<<endl;
ローカル ポートが他のポートに変更されます。誰か助けてくれませんか?また、アドレスが 0.0.0.0 になるのはなぜですか?