использование вне области видимости переменных в лямбда-выражениях C ++ 11

Я играю с C ++ 11 для удовольствия. Мне интересно, почему это происходит:

//...
std::vector<P_EndPoint> agents;
P_CommunicationProtocol requestPacket;
//...
bool repeated = std::any_of(agents.begin(), agents.end(),
                    [](P_EndPoint i)->bool 
                    {return requestPacket.identity().id()==i.id();});

Компиляция заканчивается с этой ошибкой:

error: 'requestPacket' has not been declared

Который объявлен ранее в коде. Я пытался::requestPacke и это тоже не сработало.

Как я могу использовать внешнюю переменную области видимости внутри лямбда-функции?

Ответы на вопрос(1)

Ваш ответ на вопрос