gpt4 book ai didi

vb6 - 我什么时候必须在 VB6 中将变量设置为 "Nothing"?

转载 作者:行者123 更新时间:2023-12-04 02:38:29 26 4
gpt4 key购买 nike

在我的一个 VB6 表单中,我创建了几个其他 Form 对象并将它们存储在成员变量中。

Private m_frm1 as MyForm
Private m_frm2 as MyForm

// Later...
Set m_frm1 = New MyForm
Set m_frm2 = New MyForm

我注意到每当创建和销毁此(父)表单时,我都会泄漏内存。我有必要将这些成员变量分配给 Nothing吗?在 Form_Unload() ?

一般来说,什么时候需要?

已解决:当我执行 Unload 时,修复了这个特殊的内存泄漏。在有问题的表格上,而不是在我将表格设置为 Nothing 时.我设法通过将一些类模块实例显式设置为 Nothing 来消除其他一些内存泄漏。 ,以及。

最佳答案

实际上,VB6 实现了 RAII就像 C++ 意味着本地声明的引用自动设置为 Nothing在一个 block 的末尾。同样,它应该在执行Class_Terminate后自动重置成员类变量。 .然而,有几份报告称这并不可靠。我不记得有任何严格的测试,但手动重置成员变量一直是最佳实践。

关于vb6 - 我什么时候必须在 VB6 中将变量设置为 "Nothing"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30354/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com