Поделиться через


_bstr_t::_bstr_t

Блок, относящийся только к системам Майкрософт

Формирует объект _bstr_t.

Синтаксис

_bstr_t( ) throw( );
_bstr_t(
   const _bstr_t& s1
) throw( );
_bstr_t(
   const char* s2
);
_bstr_t(
   const wchar_t* s3
);
_bstr_t(
   const _variant_t& var
);
_bstr_t(
   BSTR bstr,
   bool fCopy
);

Параметры

s1
Копируемый объект _bstr_t.

s2
Многобайтовая строка.

s3
Строка Юникода.

var
Объект _variant_t .

bstr
Существующий объект BSTR.

fCopy
bstr Если falseаргумент присоединен к новому объекту, не выполняя копирование путем вызоваSysAllocString.

Замечания

Класс _bstr_t предоставляет несколько конструкторов:

_bstr_t( )
Создает объект по умолчанию _bstr_t , инкапсулирующий объект NULL BSTR .

_bstr_t( _bstr_t& s1 )
Создает объект _bstr_t как копию другого объекта. Этот конструктор делает неглубокое копирование, которое увеличивает число ссылок для инкапсулированного BSTR объекта вместо создания нового.

_bstr_t( char* s2 )
Создает новый объект _bstr_t, вызывая функцию SysAllocString для создания нового объекта BSTR, а затем инкапсулирует его. Этот конструктор конструктор сначала преобразует многобайтовую строку в строку Юникода.

_bstr_t( wchar_t* s3 )
Создает новый объект _bstr_t, вызывая функцию SysAllocString для создания нового объекта BSTR, а затем инкапсулирует его.

_bstr_t( _variant_t& var )
_bstr_t Создает объект из _variant_t объекта, сначала извлекая BSTR объект из инкапсулированного VARIANT объекта.

_bstr_t( BSTR bstr, bool fCopy )
Создает объект _bstr_t из существующего объекта BSTR (а не из строки wchar_t*). Если fCopy это falseтак, предоставленный BSTR объект присоединен к новому объекту без создания новой копии с помощью SysAllocString. Этот конструктор используется функциями-оболочками в заголовках библиотеки типов для инкапсулирования и получения права собственности BSTR на объект, возвращаемый методом интерфейса.

Завершение блока, относящегося только к системам Майкрософт

См. также

Класс _bstr_t
Класс _variant_t