일반 함수
상태가 필요 없고 여러 곳에서 같은 동작을 공유할 때 단순합니다.
STL 알고리즘에 전달하는 동작이 짧은 일회성인지, 이름과 상태를 가진 재사용 단위인지에 따라 람다와 함수 객체의 선택이 달라집니다.
상태가 필요 없고 여러 곳에서 같은 동작을 공유할 때 단순합니다.
operator() 클래스멤버 변수로 기준값을 들고, 타입 이름으로 의미를 오래 유지할 수 있습니다.
짧은 조건이나 변환을 알고리즘 호출 지점에 붙여 기준을 옆에 둡니다.
[x]
호출 시점의 값을 보존해야 하거나 외부 값을 바꾸지 않을 때 사용합니다.
[&x]
외부 상태를 읽고 바꿔야 할 때 쓰되, 객체 수명이 알고리즘 호출보다 짧아지지 않게 확인합니다.