다음을 통해 공유


_com_ptr_t 추출기

Microsoft 전용

캡슐화된 COM 인터페이스 포인터를 추출합니다.

구문

operator Interface*( ) const throw( );
operator Interface&( ) const;
Interface& operator*( ) const;
Interface* operator->( ) const;
Interface** operator&( ) throw( );
operator bool( ) const throw( );

설명

  • operator Interface* NULL일 수 있는 캡슐화된 인터페이스 포인터를 반환합니다.

  • operator Interface& 캡슐화된 인터페이스 포인터에 대한 참조를 반환하고 포인터가 NULL인 경우 오류를 발생합니다.

  • operator* 스마트 포인터 개체가 역참조될 때 실제 캡슐화된 인터페이스처럼 작동할 수 있습니다.

  • operator-> 스마트 포인터 개체가 역참조될 때 실제 캡슐화된 인터페이스처럼 작동할 수 있습니다.

  • operator& 캡슐화된 인터페이스 포인터를 NULL로 바꿔서 캡슐화된 포인터의 주소를 반환합니다. 이 연산자를 사용하면 주소별로 스마트 포인터를 인터페이스 포인터를 반환하는 out 매개 변수가 있는 함수에 전달할 수 있습니다.

  • operator bool 조건식에서 스마트 포인터 개체를 사용할 수 있습니다. 포인터가 NULL이 아니면 이 연산자가 반환 true 됩니다.

    참고 항목

    operator bool 선언되지 explicit_com_ptr_t 않으므로 암시적으로 모든 스칼라 형식으로 bool변환할 수 있는 로 변환할 수 있습니다. 이렇게 하면 코드에 예기치 않은 결과가 발생할 수 있습니다. 이 변환을 의도하지 않게 사용하지 않도록 컴파일러 경고(수준 4) C4800을 사용하도록 설정합니다.

참고 항목

_com_ptr_t 클래스