_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( );

解説

  • Interface* 演算子 は   null となるカプセル化のインターフェイス ポインターを返します。

  • オペレーター インターフェイス はポインターが null でカプセル化インターフェイス ポインターへの参照を返します。エラーが生成されます。

  • operator* は逆参照されるときに実際にカプセル化インターフェイスのようにスマート ポインター オブジェクトが機能するようにします。

  • operator-> は逆参照されるときに実際にカプセル化インターフェイスのようにスマート ポインター オブジェクトが機能するようにします。

  • 演算子 カプセル化されたインターフェイス ポインターを返しますがロックを解放しカプセル化ポインターのアドレスを null で置き換えます。これによりスマート ポインターがインターフェイス ポインターを返す アウト のパラメーターを持つ関数のアドレスを渡すことができます。

  • のブール演算子 はスマート ポインター オブジェクトが条件式で使用できるようになります。この演算子はポインターが null である true を返します。

終了 Microsoft 固有の仕様→

参照

関連項目

_com_ptr_t クラス