SafeRelease

이 설명서의 많은 코드 예제는 다음 함수를 사용하여 COM 인터페이스 포인터를 해제합니다.

template <class T> void SafeRelease(T **ppT)
{
    if (*ppT)
    {
        (*ppT)->Release();
        *ppT = NULL;
    }
}

참고

이 함수는 SDK 헤더에 정의되어 있지 않습니다. 이 함수를 사용하려면 사용자 고유의 코드에서 정의해야 합니다.

 

이 함수는 포인터 ppT 를 해제하고 NULL과 동일하게 설정합니다.

또 다른 옵션은 ATL(활성 템플릿 라이브러리)에 정의된 CComPtr과 같은 스마트 포인터 클래스를 사용하는 것입니다.

미디어 파운데이션 정보

IUnknown::Release