这是我目前正在使用的一些代码:
int Engine::getEntityCount(const int objectType)
{
using namespace std;
int total = 0;
for_each(p_entities.begin(), p_entities.end(),
[&objectType,&total](pair<const int, const list<Entity*>> pair)
{
for_each((pair.second).begin(),(pair.second).end(),
[&objectType,&total](Entity* &entity)
{
if ( entity->getAlive() == true && entity->getObjectType() == objectType )
++total;
});
});
return total;
}
我从 intel c++ 收到以下错误:
错误:无法使用给定的参数列表 c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\algorithm 调用函数“lambda [](Entity *&)->void::operator()”
我很难理解这里出了什么问题。有没有人有任何想法?