Приемник должен соответствовать требованиям для handler. Значение h класса приемного обработчика должно работать правильно в выражении h(ec), где ec является значением типа const eror_code.
Бесплатная функция в качестве приемного обработчика:
void accept_handler(
const boost::system::error_code& ec)
{
...
}
Объект функции приемного обработчика:
struct accept_handler
{
...
void operator()(
const boost::system::error_code& ec)
{
...
}
...
};
Функция нестатичного члена класса, адаптированная к приемному обработчику с использованием bind():
void my_class::accept_handler(
const boost::system::error_code& ec)
{
...
}
...
acceptor.async_accept(...,
boost::bind(&my_class::accept_handler,
this, boost::asio::placeholders::error));