티스토리 뷰

프로그래밍 언어/C++

함수 객체 (C++)

거북이의 기술블로그 2024. 7. 5. 11:51
1. 함수객체 형태
2. 함수객체 특징

 

함수 객체 형태

//class [함수객체이름]
class Functor
{
public:

    //[반환타입] oprator()([인자],..) { //TODO }

    void operator()()
    { cout << "test" << endl; }
   
    bool operator()(int num)
   { _value = num; return true; }

public:
    int _value = 0; // 상태 저장
}

int main()
{
    Functor func; // 인스턴스 생성
    func(); // void operator()() 호출

    bool ret = func(10); // bool operator(int num)() 호출 (_value 상태값 저장)
}
  • 클래스와 동일하다
  • 연산자 오버로딩을 통해서 클래스가 함수로서 사용할 수 있도록 한다.

 

함수 객체 특징

  • 연산자 오버로딩을 통해 여러종류의 반환타입, 인자타입 및 개수를 생성할 수 있다.
  • 상태값을 가질 수 있다 ( ex) _value )

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함