这个C ++代码段做了什么?

时间:2011-11-17 12:53:07

标签: c++ boost error-code

有人可以告诉我这段代码的作用吗?

const boost::system::error_code&

我怀疑此代码用于通过指针连接到函数, 但这是它的一切吗?

有完整的代码:

    #include <iostream>
#include <boost/asio.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>

void print(const boost::system::error_code&)
{
    std::cout<<"hello word\n";
}
int main()
{
  boost::asio::io_service io;

  boost::asio::deadline_timer t(io, boost::posix_time::seconds(5));
  t.async_wait(&print);
  io.run();
  return 0;
}

1 个答案:

答案 0 :(得分:2)

我不知道boost::asio,但我怀疑boost::asio::deadline_timer::async_wait()需要一个函数采用const boost::system::error_code&类型的单个参数。要调用async_wait(),您必须传递指向此类函数的指针。

void print(const boost::system::error_code&)就是这样一个功能。

如果您不想使用函数参数,可以将其保留为未命名。这可以防止编译器通常在您未使用提供的函数参数之一时发出警告。