error LNK2019: 无法解析的外部符号 "public: class boost::asio::basic_stream_socket

来源:互联网 发布:公务员考试用书 知乎 编辑:程序博客网 时间:2024/05/22 04:32
今日在做boost库服务器端异步的accept监听器时,编译出错
1>     正在创建库 F:\myworkspace\code\cocos2d-x\3DGameWithForServer\Debug\3DGameWithForServer.lib 和对象 F:\myworkspace\code\cocos2d-x\3DGameWithForServer\Debug\3DGameWithForServer.exp
1>tcp_server.obj : error LNK2019: 无法解析的外部符号 "public: class boost::asio::basic_stream_socket<class boost::asio::ip::tcp,class boost::asio::stream_socket_service<class boost::asio::ip::tcp> > & __thiscall tcp_session::socket(void)" (?socket@tcp_session@@QAEAAV?$basic_stream_socket@Vtcp@ip@asio@boost@@V?$stream_socket_service@Vtcp@ip@asio@boost@@@34@@asio@boost@@XZ),该符号在函数 "private: void __thiscall tcp_server::start_accept(void)" (?start_accept@tcp_server@@AAEXXZ) 中被引用
1>F:\myworkspace\code\cocos2d-x\3DGameWithForServer\Debug\3DGameWithForServer.exe : fatal error LNK1120: 1 个无法解析的外部命令

代码
m_acceptor.async_accept(session->socket(),                       //将接受到的socket保存在session的socket中
boost::bind(&tcp_server::handle_accept, 
this,
boost::asio::placeholders::error,
session
));

一检查session->socket(),的函数未实现,实现后编译通过。

原创粉丝点击