operator()
객체 이름 뒤에 괄호를 붙였을 때 실행될 동작을 정의한다.
operator()를 오버로딩하면 객체를 함수처럼 호출하고, 멤버 변수로 비교와 변환 기준을 보관할 수 있다.
객체 이름 뒤에 괄호를 붙였을 때 실행될 동작을 정의한다.
비교 기준, 임계값, 누적값 같은 문맥을 멤버로 함께 들고 간다.
간단한 함수 객체를 선언 지점에서 만들고 캡처로 상태를 보관한다.
함수 객체는 함수를 넘기는 문법 이상의 의미가 있다. 호출 로직과 필요한 상태를 하나의 값으로 전달한다.