在VS 2015中使用boost 1.46编译旧c ++项目时出错

时间:2018-12-13 23:25:33

标签: c++ boost visual-studio-2015 windows-10 boost-asio

真的希望在这里为您提供帮助。 我试图编译使用boost v 1.48的旧项目,该项目以前是在几年前使用VS 10(Windows 7)编译的,没有错误。现在,我正在尝试使用VS 15(Windows 10)进行编译。

但是我仍然在第77行的\ boost \ asio \ detail \ impl \ win_iocp_io_service.ipp中不断收到这些错误

这是我遇到的错误类型 https://imgur.com/sHamUXl

  

错误C2039'min':不是'std'Pandora E:\ 1的成员。工作   tuts \ Guardian(win_unix)\ boost \ asio \ detail \ impl \ win_iocp_io_service.ipp 77
  错误C2065'min':未声明的标识符Pandora E:\ 1。工作   tuts \ Guardian(win_unix)\ boost \ asio \ detail \ impl \ win_iocp_io_service.ipp 77
  错误C2275'size_t':非法将此类型用作   表达式Pandora E:\ 1。工作   tuts \ Guardian(win_unix)\ boost \ asio \ detail \ impl \ win_iocp_io_service.ipp 77
  错误C2059语法错误:')'Pandora E:\ 1。工作   tuts \ Guardian(win_unix)\ boost \ asio \ detail \ impl \ win_iocp_io_service.ipp 77
  错误C2143语法错误:Pandora E:\ 1缺少'('在')'之前。工作   tuts \ Guardian(win_unix)\ boost \ asio \ detail \ impl \ win_iocp_io_service.ipp 77

我一直在找几个小时,但无法知道为什么会这样。有人遇到过这个问题吗?这是我的第一个问题,因此,如果我在某个地方搞砸了,或者您需要更多信息,请告诉我。谢谢!

1 个答案:

答案 0 :(得分:0)

只要有人遇到此问题,便能找到答案。 在include / impl / win_iocp_io_service.ipp中添加包含算法可解决此问题。

为什么VS15发生这种情况对我来说仍然是个谜