VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - 使用属性来初始化资源
发表评论(0)作者:不详, 平台:VB6.0+Win98, 阅读:11203, 日期:2003-08-29
很多程序都需要访问资源,而这些资源通常在第一次使用的时候被初始化。例如,一个数据库在使用之前必须建立连接。


程序启动之前必须初始化有关资源,这是非常普遍的。然而,这也使程序的启动变得很缓慢。而且,并不是每一种资源在程序启动时都必须加载。

作为优化考虑,你可以通过将资源放入属性程序中,按需要初始化资源。在属性程序中,首先声明一个静态变量以存放资源;然后,将启动的资源包含在If statement中以决定它是否初始化;最后,返回要启动的资源。

下面的代码段说明一个属性程序初始化具有选择性的资源:

Public Property Get MyCollection() As Collection
    Static objCollection As Collection
    
    If objCollection Is Nothing Then
        注释:Initialize
        Set objCollection = New Collection
        With objCollection
            Call .Add("Value 1")
            Call .Add("Value 2")
        End With
    End If
    
    Set MyCollection = objCollection
End Property

属性程序第一次被调用时,objCollection变量的值是空的,所以初始化代码被执行。属性程序第二次被调用时,由于对象已经被建立,则初始化不会被执行。