【发布时间】:2010-02-23 22:45:23
【问题描述】:
我需要将 bstr 类型的 VARIANT 存储在 stl 向量中。我不确定我应该如何将 VARIANT 类型存储在向量中。
vector<VARIANT> vec_MyVec;
VARIANT var_Temp;
VariantInit(&var_Temp);
var_Temp.vt = VT_BSTR
var_Temp.bstrVal = SysAllocString("Test");
vec_MyVec.push_back(var_Temp);
这个实现会导致内存泄漏吗?存储变体的最佳方式是什么?
谢谢
【问题讨论】:
-
你的意思是“这个实现会导致内存泄漏吗?”据我所知,您存储 VARIANT 的方式很好。
-
我认为 VARIANT 的副本存储在向量中。然后 SysAllocString() 导致内存泄漏,因为我没有释放我的原始对象。但我不确定。这就是我需要帮助的原因。