0
这是第一次使用lambda函数在C++,我需要值传递给lambda函数的主体内使用:C++通参数lambda函数
在上面的代码我需要通过INT参数seq_msg:
void do_connect(tcp::resolver::iterator endpoint_iterator, int seq_msg)
{
boost::asio::async_connect(socket_, endpoint_iterator, [this](boost::system::error_code ec, tcp::resolver::iterator)
{
if (!ec)
{
send_message(seq_msg);
do_read_header();
}
});
}
谢谢大家。我测试了这两个选项并且都可以工作现在,我只需要了解它们之间是否有重要的区别。 – Neumann
如果您使用lambda作为回调函数,那么毫无疑问捕获一个额外的参数要容易得多。绑定方法允许您从其他类函数,函数指针或其他函数对象创建函数对象。 – Jeka