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<> 도 포함하고 있다.