find_if Lambda 捕获

https://www.learncpp.com/cpp-tutorial/lambda-captures/

捕获参数默认为按值传递 const 不可改变
格式 []() {}
[想要使用的的外部变量,变量2,&引用方式传递变量](参数) {函数体}

SnakeBody sb(x, y, 0);
bool isFind = std::find_if(snake->Body.begin(), snake->Body.end(), [&sb](SnakeBody a) {return a == sb; }) != snake->Body.end();

[&sb]表示以引用传递外部参数

你可能感兴趣的:(find_if Lambda 捕获)