설탕중독 2022. 7. 3. 20:46

 

함수 객체

 

함수 객체란?

함수처럼 동작하는 객체를 말한다.

함수처럼 동작하기 위해서는 함수 호출 때 사용하는 () 괄호 연산자를 오버 로딩해야 한다.

 

1-1
1-2

 

이렇게 하면 이제 함수 포인터의 단점과 다르게 

상태 값을 가지고 있으면서 함수처럼 호출할 수 있다.

 

 

2-1
2-2

 

이런 식으로 응용도 가능하다. int 값을 받아서 불리언 값을 뱉는 형식이며

true를 리턴으로 주었다. 

 

이러한 함수 객체의 가장 큰 장점은 실행할 것을 만들어두는 시점과 실제 실행하는 시점을 다르게

가져갈 수 있다는 것이다. 쉽게 말해 일감을 만들어두고 실행은 나중에 마음대로 할 수 있다는 것이다.

보통 MMORPG 서버 쪽에서 이러한 함수 객체를 유용하게 사용한다.