这是来自提升asio的一个例子。 这是什么意思?为什么[]?
acceptor_.async_accept(socket_,
[this](boost::system::error_code ec)
答案 0 :(得分:5)
用于创建函数作为表达式
的lambda expression []
是捕获列表
符号列表可以按如下方式传递:
- [a,& b]其中a按值捕获,b通过引用捕获。
- [this]按值
捕获此指针- [&]通过引用
捕获lambda主体中提到的所有自动变量- [=]按值
捕获lambda正文中提到的所有自动变量- []没有捕获任何内容
答案 1 :(得分:4)
它是lambda表达式的一部分。查看here了解更多信息。