I bet there should be times you need to use a predicate not only with 2 parameters but more than that. I am now wondering how can I pass in an algorithm's function a predicate with 3 or more parameters.

That's the point where my knowledge about STL stops, could someone clear it up with new roads from here ?

Thank you.