我最近一直在使用套接字库,并决定尝试使用boost的asio。但是,我无法让他们的示例代码工作。
#include "stdafx.h"
#include <boost/asio.hpp>
int main()
{
char port = 23;
boost::asio::basic_socket_acceptor<boost::asio::ip::tcp> acceptor(boost::asio::io_context);
boost::asio::ip::tcp::endpoint endpoint(boost::asio::ip::tcp::v4(), port);
acceptor.open(endpoint.protocol());
acceptor.set_option(boost::asio::ip::tcp::acceptor::reuse_address(true));
acceptor.bind(endpoint);
acceptor.listen();
return 0;
}
我正在使用Visual Studio 2017并将其作为带有boost 1.66.0的Visual C ++控制台项目。 Visual Studio告诉我“表达式必须具有与acceptor.open,set,bind和listen相关的类类型”。
我从https://www.boost.org/doc/libs/1_66_0/doc/html/boost_asio/reference/ip__tcp/acceptor.html
获得了示例代码我稍微修改了它,因为它只是复制和粘贴不好玩,并且还试图让它工作。我花了几个小时试图弄清楚它。我真的很想学习如何使用这些东西!有什么想法吗?