怎样判断_variant_t变量是否为空
我写的一个程序中有如下代码:
- C/C++ code
_variant_t bh; …… if(bh==VT_EMPTY||bh.vt==VT_NULL) { …… }在VC6中编译能通过,但在VC2005中则有错。错误信息如下:
1>d:\vc2005\goodssale\goodssale\rxado.cpp(94) : error C2593: “operator ==”不明确
1> 可能是“内置 C++ operator==(short, VARENUM)”
1> 或“内置 C++ operator==(long, VARENUM)”
1> 或“内置 C++ operator==(float, VARENUM)”
1> 或“内置 C++ operator==(double, VARENUM)”
1> 或“内置 C++ operator==(bool, VARENUM)”
1> 或“内置 C++ operator==(BYTE, VARENUM)”
1> 或“内置 C++ operator==(char, VARENUM)”
1> 或“内置 C++ operator==(unsigned short, VARENUM)”
1> 或“内置 C++ operator==(unsigned long, VARENUM)”
1> 或“内置 C++ operator==(int, VARENUM)”
1> 或“内置 C++ operator==(unsigned int, VARENUM)”
1> 或“内置 C++ operator==(__int64, VARENUM)”
1> 或“内置 C++ operator==(unsigned __int64, VARENUM)”
1> 试图匹配参数列表“(_variant_t, const VARENUM)”时
请问各位大大怎样才能解决这个问题?
[解决办法]
应该if(bh.vt==VT_EMPTY||bh.vt==VT_NULL)