STL 에는 중요하게 사용할 수 있는 함수 객체가 내장돼 있다. 그중 대표적인 함수 객체가 less 와 greater 입니다. less 는 < 연산자의 함수 객체이며, greater 는 > 연산자의 함수 객체입니다. 또한, less와 greater 는 bool 형을 반환하는 조건자(predicate)입니다.
struct Less
{
bool operator()(int a, int b)
{
return a < b;
}
}
#include <functional> // less<> 해더
typedef less<int> Less;
int main()
{
Less l;
l.operator(10, 20);
Less(10, 20);
}
functional 해더에는 이 외에도 plus<>, minus<> 도 포함하고 있다.