我有幾個使用FileSystemObject的過程。我覺得這很方便。傳遞現有的FileSystemObject或創建多個實例
問:將一個現有的FileSystemObject實例從一個「main」過程作爲參數傳遞給這些其他過程,而不是讓每個過程都創建自己的FileSystemObject實例是否明智?
例子:這是在任何方面更好地做到這一點:
Sub MainSub()
Dim FSO : Set FSO = CreateObject("Scripting.FileSystemObject")
Call OtherSub(FSO, myargs)
' call other subs and functions that use FileSystemObject
End Sub
Sub OtherSub(FSO, myargs)
' Do stuff with FSO
' call other subs and functions that use FileSystemObject
End Sub
我已經看到至少一個程序員做的,而不是下面的,這是我平時做:
Sub MainSub()
Dim FSO : Set FSO = CreateObject("Scripting.FileSystemObject")
Call OtherSub(myargs)
' call other subs and functions that use FileSystemObject
End Sub
Sub OtherSub(myargs)
Dim FSO : Set FSO = CreateObject("Scripting.FileSystemObject")
Call OtherSub(myargs)
' Do stuff with FSO
' call other subs and functions that use FileSystemObject
End Sub
我可以看到做前者的想法,因爲這可能會減少與具有多個FileSystemObject實例相關的開銷。但每次都必須通過FSO作爲論證似乎非常麻煩。嚴重的是,開銷真的很大嗎?
假OOP。我喜歡這個。 –