Средства извлечения _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 Позволяет использовать объект интеллектуального указателя в условном выражении. Этот оператор возвращает значение true, если указатель не NULL.
Завершение блока, относящегося только к системам Microsoft