Ответ 1
Что означает [это]?
Он представляет lambda - вызываемый объект функции. Помещение this
в скобки означает, что лямбда захватывает this
, так что члены этого объекта доступны внутри него. Lambdas также может захватывать локальные переменные по значению или ссылке, как описано на связанной странице.
Лямбда имеет перегрузку operator()
, так что ее можно вызвать как функцию:
Event * event = some_event();
listener(event);
который будет запускать код, определенный в теле лямбда.
Является ли этот новый синтаксис в С++ 11?
Да.