2011-11-02 48 views

回答

4

靜態(BAS)模塊在運行期間加載並保持駐留。類(CLS)模塊爲代碼和數據提供更動態的分配。

類還提供了更好的封裝,可以創建多個實例,可以持久化,並且比靜態分配具有許多其他優點。

您可能需要閱讀和學習的手冊中有一整段名爲"Programming With Objects"。 Learning Edition上方的所有合法VB6版本都應該具有這些內容,並且更多位於隨附的MSDN CD中。硬拷貝書籍還可以從一些新的和使用的來源中找到。

+0

+1「Programming with Objects」也可免費在線獲取! http://msdn.microsoft.com/en-us/library/aa716290(v=VS.60).aspx我已冒昧編輯此鏈接到您的答案 – MarkJ

+0

謝謝。但我也認爲人們需要更多的鼓勵來安裝他們的MSDN CD來獲得F1幫助,以避免發佈無關緊要的問題。花一些時間閱讀文檔也是非常有啓發性的,MSDN日益變得越來越笨拙。 – Bob77

0

對於每個BAS模塊,所有模塊級變量都在應用程序啓動時分配。您無法取消分配這些變量(儘管可以將對象引用設置爲Nothing,但實際變量仍然存在)。

CLS模塊的模塊級變量僅在實例化類時分配。當類被銷燬時,爲類的實例分配的所有內存都將被釋放。您可以根據需要創建任意數量的CLS模塊實例,並且每個實例都有自己的一組模塊級變量。

在BAS模塊中,聲明爲Public的變量範圍對於應用程序是全局的。但是,在CLS模塊中,如果您有對該類的實例的引用(變量成爲公共屬性的幕後),則只能訪問公共變量。

一般而言,您想要從任何模塊訪問的所有變量和例程都應放入BAS模塊。

相關問題