【发布时间】:2010-02-28 06:51:37
【问题描述】:
谁能解释一下当我们在 COM 对象和 VB 之间传递值时,内存分配/解除分配是如何发生的。
我的担忧是: 1.
IMyInterface::Method1 ([in] BSTR* pVal, [in] SAFEARRAY(BSTR)* pArray);
我们是否需要为 COM 对象中的上述参数释放分配的内存?
2.
IMyInterface::Method2 ([in, out] BSTR* pVal);
在这种情况下,VB 会为 COM 返回值释放内存吗? (COM 对象为这些返回值分配内存)
3.
IProxy_MyInterface::Event1 ([in] BSTR* pVal);
一旦事件在 VB 内部处理,VB 是否会再次处理释放参数内存的问题?
感谢您的帮助。
谢谢
【问题讨论】:
标签: memory-management com vb6