VBS中的Singleton类(单例模式)的代码示例

 

 VBS中的Singleton 代码示例

 

Class Class_FSO

   Private FSO_

   Public Property Get FSO
   print "Get FSO"
       On Error Resume Next
       If  Typename(FSO_) = "FileSystemObject" Then
           Set FSO = FileSysObj  'get the old one
     print "Old one"
       Else
           ExecuteGlobal "Const Class_FSO_IsRunning = 1" 'one instance frag
           If Err = 0 Then
               ExecuteGlobal "Set Class_FSO_RunningInstance = Me"
               Set FSO = CreateObject("Scripting.FileSystemObject")
               Set FileSysObj = FSO
      print "New one"
           Else
    print Err.number
               Set FSO = Class_FSO_RunningInstance.FSO
               Set FileSysObj = FSO
      print "Get formal instance"
           End If
       End If
   End Property

   Private Property Set FileSysObj(obj)
   print "Set FileSysObj"
       Set FSO_ = obj   
   End Property

   Private Property Get FileSysObj
   print "Get FileSysObj"
       Set FileSysObj = FSO_
   End Property
End Class

'==============================

Dim x
Dim y
Dim z
Dim a
Dim b

print "'====x===="
Set x = new Class_FSO
print "'====y===="
set y = x.FSO
print "'====b===="
set b = x.FSO
print "'====z===="
set z = new Class_FSO
print "'====a===="
set a = z.FSO
print "'========="
print CStr(y Is a) & " " & CStr(y Is b) & " " & CStr(a Is b)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值