使用Cleanup方法避免循环引用
来源:岁月联盟
时间:2007-02-01
Dim objClass2 As Class2
Private Sub Class_Initialize()
Debug.Print TypeName(Me) & ".Initialize"
Set objClass2 = New Class2
Set objClass2.Class1 = Me
End Sub
Private Sub Class_Terminate()
Set objClass2 = Nothing
Debug.Print TypeName(Me) & ".Terminate"
End Sub
在Class2中添加如下的代码:
Dim objClass1 As Class1
Public Property Set Class1(ByRef NewValue As Class1)
Set objClass1 = NewValue
End Property
Private Sub Class_Initialize()
Debug.Print TypeName(Me) & ".Initialize"
End Sub
Private Sub Class_Terminate()
Set objClass1 = Nothing
Debug.Print TypeName(Me) & ".Terminate"
End Sub