Это спецификация Mirosoft. Так как рассмотренный нами ранее тип BSTR был опасен в использовании, то для удобного программирования был создан класс _bstr_t. Этот класс представляет из себя оболочку для типа BSTR в нем встроены конструкторы и деструкторы, которые правильно организуют распределение памяти. Описан он в #include "comutil.h" У этого класса перегружено много операторов что значительно облегчает работу. Смотрите пример использования.
#include "stdafx.h" #include "windows.h" #include "ole2.h" #include "iostream.h" #include "comdef.h" void main() { _bstr_t bstr=L"Hello"; bstr=L"Test Hello"; wprintf(L"%\n",(wchar_t*)bstr); }
Вот такие операторы определены в _bstr_t.
copy length operator = operator += operator + operator ! operator ==, !=, <, >, <=, >= operator wchar_t*, char*.