使用Cleanup方法避免循环引用

发表于:2007-06-21来源:作者:点击数: 标签:
为了能看看这一方面的范例,可以建立一个标准的EXE VB 工程。添加两个类模块,Class1 和 Class2,在Class1中添加如下的代码: Dim objClass2 As Class2 Private Sub Class_Initialize() De bug .Print TypeName(Me) ".Initialize" Set objClass2 = New Class

   
  为了能看看这一方面的范例,可以建立一个标准的EXE VB工程。添加两个类模块,Class1 和 Class2,在Class1中添加如下的代码:

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

原文转自:http://www.ltesting.net