RT.
我们平常写客户端程序时,一般不需要将本地SOCKET与本地的某一个IP进行BIND;当本地只有一块网卡的时候,没有问题。
但是当本地有多快网卡时,系统将该SOCKET自动绑定到一个IP,有可能这个IP不是你所期望的。
所以这个时候你就需要进行BIND了。
对于新手学习BOOST::ASIO,该如何办呢?
最终搞定了,代码如下:
tcp::socket socket1 = new tcp::socket(...); // 构造参数略过
tcp::endpoint end_point(boost::asio::ip::address_v4(ntohl(dwIPAddrHBO)), wPort );
socket1->open(boost::asio::ip::tcp::v4());
socket1->bind(end_point);
看起来简单,其实不简单啊。。