KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
What is wrong with the code below? It is supposed to find an element in the list of structs if the first of the struct's members equals to 0. The compiler complains about the lambda argument not being of type predicate. #include <iostream> #include <stdint.h> #include <fstream> #include <list> #include <algorithm> struct S { int S1; int S2; }; using namespace std; int main() { list<S> l; S s1; s1.S1 = 0; s1.S2 = 0; S s2; s2.S1 = 1; s2.S2 = 1; l.push_back(s2); l.push_back(s1); list<S>::iterator it = find_if(l.begin(), l.end(), [] (S s) { return s.S1 == 0; } ); }
Tags (comma-separated)
Save Edits
Cancel