errc :: timed_out类型的boost系统make_error_code有“Unkown error”消息

时间:2016-04-25 21:27:45

标签: c++ boost boost-system

为什么以下代码输出“未知错误”?我期待其他一些消息,比如“操作超时”或其他描述性错误。

操作系统:Windows 7       提升:1.57

#include <iostream>
#include "boost/system/system_error.hpp"

void main()
{
    boost::system::error_code ec = make_error_code(boost::system::errc::timed_out);
    auto message = ec.message();
    std::cout << message << std::endl;
}

1 个答案:

答案 0 :(得分:0)

建议您检查包含路径,库路径和项目设置。

我已经更正了程序(main必须返回一个int)并在clang下编译:

#include <iostream>
#include <boost/system/system_error.hpp>

int main()
{
    boost::system::error_code ec = make_error_code(boost::system::errc::timed_out);
    auto message = ec.message();
    std::cout << message << std::endl;
}

命令行:

c++ -std=c++14 -I${HOME}/local/include -L${HOME}/local/lib -lboost_system

结果:

Operation timed out

我的升级安装安装在前缀$ {HOME} / local