为类添加集合

一、首先创建三个基础类(ClassA、ClassB、ClassC)

‘ ClassA.cls
‘(空类,可根据需要添加属性或方法,见 建立类模块

‘ ClassB.cls
‘(空类,可根据需要添加属性或方法,见 建立类模块

‘ ClassC.cls
‘(空类,可根据需要添加属性或方法,见 建立类模块

二、创建主类(MainClass)包含三个集合

‘ MainClass.cls
Option Explicit

Private m_colItemsA As Collection
Private m_colItemsB As Collection
Private m_colItemsC As Collection

‘ 类初始化时创建集合
Private Sub Class_Initialize()
Set m_colItemsA = New Collection
Set m_colItemsB = New Collection
Set m_colItemsC = New Collection
End Sub

‘ 添加ClassA实例到集合A
Public Sub AddItemA(objA As ClassA)
m_colItemsA.Add objA
End Sub

‘ 添加ClassB实例到集合B
Public Sub AddItemB(objB As ClassB)
m_colItemsB.Add objB
End Sub

‘ 添加ClassC实例到集合C
Public Sub AddItemC(objC As ClassC)
m_colItemsC.Add objC
End Sub

‘ 获取集合A(只读)
Public Property Get ItemsA() As Collection
Set ItemsA = m_colItemsA
End Property

‘ 获取集合B(只读)
Public Property Get ItemsB() As Collection
Set ItemsB = m_colItemsB
End Property

‘ 获取集合C(只读)
Public Property Get ItemsC() As Collection
Set ItemsC = m_colItemsC
End Property

‘ 清理资源
Private Sub Class_Terminate()
Set m_colItemsA = Nothing
Set m_colItemsB = Nothing
Set m_colItemsC = Nothing
End Sub

三、使用示范

Dim mainObj As New MainClass
Dim objA As New ClassA
Dim objB As New ClassB
Dim objC As New ClassC

‘ 添加对象到各个集合
mainObj.AddItemA objA
mainObj.AddItemB objB
mainObj.AddItemC objC

‘ 遍历集合示例
Dim item As Object
For Each item In mainObj.ItemsA
‘ 处理ClassA实例
Next

For Each item In mainObj.ItemsB
‘ 处理ClassB实例
Next

For Each item In mainObj.ItemsC
‘ 处理ClassC实例
Next

四、代码说明

  1. 三个基础类(ClassA/B/C)可根据实际需求添加成员
  2. MainClass使用Collection对象管理三个不同类型的集合
  3. 通过AddItemX方法确保类型安全,只能添加指定类型的实例
  4. 通过只读属性ItemsX暴露集合的访问
  5. 在Class_Terminate中释放集合资源
  6. 使用For Each循环可以方便地遍历集合成员

五、注意事项

VB6的集合是1-based索引(从1开始),如果需要更强大的集合操作,可以考虑使用Dictionary对象或自定义集合类。

邢国

邢国(立、亡时间不详):姬姓。周成王为感谢周公旦的辅佐,于是封周公旦第四子姬苴于商代邢国旧地(今河北邢台)。西周邢国是太行山以东具有征伐权的元侯之国,历史上多次率领诸侯与北方的戎狄作战,邢侯搏戎在当时中国北方占有重要地位。春秋末年,邢国衰弱,北方戎狄侵犯,邢君南迁,亡于卫国,后转为晋国赵襄子的采邑。

卫国

卫国(前1039年至前209年):姬姓。康叔是周武王之弟,后于周成王时期随周公旦平定武庚叛乱,叛乱平定后,周公在武庚统治地区建立卫国,以平叛有功的康叔为卫国国君。卫国共先后传承41位国君,秦王政六年(前241年),秦国攻占濮阳等地,卫元君被迫迁往野王,卫国名存实亡,仅余国君封号,秦二世元年(前209年),卫国最后一任国君卫君角被秦二世废为庶人,卫国彻底灭亡。