【问题标题】:What does this C++ code segment do?这个 C++ 代码段有什么作用?
【发布时间】:2011-12-31 07:56:59
【问题描述】:

谁能告诉我这段代码是做什么的?

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;
}

【问题讨论】:

  • 您能否展示更多代码、上下文以及您提出问题的原因?
  • 它指定了一个类型,但是没有其余的语句它什么都不做。
  • 这可能会有所帮助:stackoverflow.com/questions/2490456/…
  • @downvoters,没有编辑,这个问题不是很好,有编辑,这是一个公平的问题——即使问得有点不正确——在 OP 上放轻松。

标签: c++ boost error-code


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 2011-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-07
    • 1970-01-01
    相关资源
    最近更新 更多