這是自從在VB編程之日起就一直在腦海中一直在困擾的問題之一。我有自己的個人想法,但我想知道靜態變量的使用是什麼。靜態或私人
靜態變量:
Public Function Whatever() as Boolean
Static Flag as Boolean
If not Flag then
' do something
Flag = True
end if
Return Something
End sub
VS:
私有變量:
Private Flag as Boolean
Public Function Whatever() as Boolean
If not Flag then
' do something
Flag = True
end if
Return Something
End sub
除非有人否則知道,上述相同的功能,除了一個事實,即 「私人」國旗暴露在課堂上其他地方使用。
問題開始靜..等,以產生..
他們在哪裏存儲..它們真的創建和設置時等
顯然,編譯器將它們添加到數據堆(I知道這個詞的不好用法)...但是在開銷,垃圾回收等方面有沒有懲罰。
通常我會避免他們像瘟疫,因爲他們提出的問題比答案要多。
是否真的有任何使用靜力學的固體原因?
PS:希望這傳遞SO問題測試...
注意我不是問如何創建靜態細節..我更問如果有什麼事情會讓使用靜態值得的。
附錄....
我做了一點研究,發現這個相當有啓發性。
https://weblogs.asp.net/psteele/7717
聲明爲靜態的變量通常在類的所有實例中共享......此外,該變量的靜態值與每個對象不唯一的對象無關。我認爲靜態作爲一種常數... – Codexer
可能的重複[什麼時候在Visual Basic中創建靜態變量?](http://stackoverflow.com/questions/12199698/when-is-a-static-變量在視覺基本創建) –
嗯...沒有@ Zaggler靜態特定於實例。 –