这个VB6成员变量何时被破坏?
发布时间:2020-12-17 00:18:25 所属栏目:大数据 来源:网络整理
导读:假设我有一个类模块clsMyClass,其中一个对象作为成员变量.下面列出了这个非常简单的类的两个完整实现. 实施1: Dim oObj As New clsObject 实施2: Dim oObj As clsObjectPrivate Sub Class_Initialize() Set oObj = New clsObjectEnd SubPrivate Sub Class_
假设我有一个类模块clsMyClass,其中一个对象作为成员变量.下面列出了这个非常简单的类的两个完整实现.
实施1: Dim oObj As New clsObject 实施2: Dim oObj As clsObject Private Sub Class_Initialize() Set oObj = New clsObject End Sub Private Sub Class_Terminate() Set oObj = Nothing End Sub 这两者之间有什么功能差异吗?特别是oObj的寿命是一样的吗?
在实现1中,clsObject在使用之前不会被实例化.如果从未使用过,那么clsObject.Class_Initialize事件将永远不会触发.
在实现2中,将在实例化clsMyClass的同时创建clsObject实例.如果创建了clsMyClass,则始终会执行clsObject.Class_Initialize. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |