Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Microsoft-specifika
Extrahera den inkapslade COM-gränssnittspekaren.
Syntax
operator Interface*( ) const throw( );
operator Interface&( ) const;
Interface& operator*( ) const;
Interface* operator->( ) const;
Interface** operator&( ) throw( );
operator bool( ) const throw( );
Anmärkningar
operator Interface*
Returnerar den inkapslade gränssnittspekaren, som kan vara NULL.operator Interface&
Returnerar en referens till den inkapslade gränssnittspekaren och utfärdar ett fel om pekaren är NULL.operator*
Tillåter att ett smart pekarobjekt fungerar som om det vore det faktiska inkapslade gränssnittet när det avrefereras.operator->
Tillåter att ett smart pekarobjekt fungerar som om det vore det faktiska inneslutna gränssnittet när det avrefereras.operator&
Släpper alla inkapslade gränssnittspekare, ersätter den med NULL och returnerar adressen för den inkapslade pekaren. Med den här operatorn kan du skicka den smarta pekaren efter adress till en funktion som har en ut parameter genom vilken den returnerar en gränssnittspekare.operator bool
Tillåter att ett smart pekarobjekt används i ett villkorsuttryck. Den här operatorn returnerartrue
om pekaren inte är NULL.Not
Eftersom
operator bool
inte deklareras somexplicit
kan_com_ptr_t
implicit konverteras tillbool
, som kan konverteras till alla skalärtyper. Detta kan få oväntade konsekvenser i koden. Aktivera Kompilatorvarning (nivå 4) C4800 för att förhindra oavsiktlig användning av den här konverteringen.