_variant_t是一个类,它封装了VARIANT类型,而VARIANT是一个万能类型,可以存放任意类型的数据(字符型、日期型、数值型等等);
_bstr_t也是一个类,它封装了BSTR类型,BSTR是一个字符串指针,也即可以存放字符串。
这两种类型是COM编程中用得比较多的,这也是为什么要封装成类,来提高其操作的便捷性。
BSTR是UNICODE字符串指针,并且字符串前面有四个字节的内存空间用来存放字符串的长度的;
至于VARIANT,可以看MSDN,是个结构体(里面包含联合体)通过vt指示当前存储的是哪种类型的变量。