본문 바로가기

Programming

C#의 Delegate - CallBack 만들기

Delegate - 대리자

말 그대로 생성한 것을 대신 실행가능 =  함수를 대리 실행 시켜 CallBack 을 만들 수 있음

 

public class utility : MonoBehaviour
{
    // GameObject를 파라매터로 가지는 CallBack
    public delegate void Del(GameObject obj);
}

// 오브젝트 Instantiate()으로 생성, 초기화
    // 오브젝트 풀에 들어오는 객체들은 모두 objectPoolListener를 상속받음
    protected GameObject InstantiateObject()
    {
        GameObject temp_obj = Instantiate(m_obj);
        m_memoryPool.Add(temp_obj);

        // @warning 오브젝트가 objectPoolListener를 상속받지 않았을 경우 예외처리
        temp_obj.GetComponent<objectPoolListener>().setDelectCallBack(m_cbDelete); // 제거 타이밍에 CallBack으로 매니져에게 오브젝트 풀에서 제거 요청

        return temp_obj;
    }

'Programming' 카테고리의 다른 글

[C#] 이란  (1) 2020.03.09
소켓 프로그래밍  (0) 2020.03.03
[C++]가상 함수  (0) 2020.03.03
오브젝트풀과 옵저버 패턴  (0) 2020.02.25
SVN과 GIT  (0) 2020.02.06