我玩 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
了,它也不起作用。
如何在 lambda 函数中使用外部范围变量?