C++ 我是否在release或destructor中删除com对象的实例数据?

C++ 我是否在release或destructor中删除com对象的实例数据?,c++,com,C++,Com,顾名思义,Release应该发布实例数据。这也是C++中析构函数的任务。 现在我应该在哪里发布实例数据?哪个是第一个被调用的?COM对象跟踪对其调用了多少次AddRef和Release。 这称为RefCount 当RefCount降至零时,表示没有人再持有对对象的引用,它会删除自身 您和您的代码永远无法确切地知道程序的哪些其他元素可能持有对COM对象的引用,因此不应该显式删除该对象 相反,您应该在完成后调用Release。当调用最后一个版本时,对象将删除其自身的数据。COM对象跟踪对其调用了多少

顾名思义,Release应该发布实例数据。这也是C++中析构函数的任务。
现在我应该在哪里发布实例数据?哪个是第一个被调用的?

COM对象跟踪对其调用了多少次
AddRef
Release

这称为RefCount 当RefCount降至零时,表示没有人再持有对对象的引用,它会删除自身

您和您的代码永远无法确切地知道程序的哪些其他元素可能持有对COM对象的引用,因此不应该显式删除该对象


相反,您应该在完成后调用
Release
。当调用最后一个
版本
时,对象将删除其自身的数据。

COM对象跟踪对其调用了多少次
AddRef
Release

这称为RefCount 当RefCount降至零时,表示没有人再持有对对象的引用,它会删除自身

您和您的代码永远无法确切地知道程序的哪些其他元素可能持有对COM对象的引用,因此不应该显式删除该对象


相反,您应该在完成后调用
Release
。调用最后一次
释放
时,对象将删除自己的数据。

释放
应减少引用计数。只有当引用计数达到零时,对象才会被销毁,而调用的析构函数。

Release
应该减少引用计数。只有当引用计数达到零时,对象才会被销毁,并调用析构函数。

显示示例代码,否则就非常不清楚您在说什么。最后一次
释放
调用析构函数。就这么简单<代码>发布负责计数,而资源释放在析构函数中。显示示例代码,否则就非常不清楚您在说什么。最后一次
发布
调用析构函数。就这么简单<代码>释放负责计数,资源释放在析构函数中。*对象被销毁,析构函数被调用。*对象被销毁,析构函数被调用。