- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
壹、變數宣告有分成動態宣告、靜態宣告
○動態宣告:由於VB是個模組化的程式,因此在執行程式功能或是觸動物件事件時就會去執行副程式(Sub、Function、Property......等等),執行副程式時,VB或把副程式的程式碼複製到隨機位置的記憶體裡後再執行,當副程式執行結束後則從記憶體裡移除該副程式的程式碼。動態宣告變數也就是執行該副程式時,電腦會隨機分配記憶體位置給變數存放資料,因此副程式執行結束而程式碼被移出記憶體時,變數也隨之移出記憶體,再執行該副程式時,電腦又隨機分配記憶體位置給變數存放資料,雖然使用相同名稱來當變數,但每次執行所分配到的記憶體位置不同,因此無法享有相同的資訊。
◎宣告法,於副程式裡使用Dim敘述宣告:
Private Sub ....
Dim A As Integer
Dim B As Date
Dim C As Single
Dim D As Object
End Sub Private Function ....
Dim A As Integer
Dim B As Date
Dim C As Single
Dim D As Object
End Function
●範例程式碼:
Private Sub Command1_Click()
Call A
Call A
Call A
Call A 表示呼叫副程式A
並暫停目前的工作來先執行副程式A裡的程式碼
直到副程式A裡的程式碼執行完畢後
再回來到Private Sub Command1_Click()
中的Call A的下一行開始執行
End Sub Function A()
Dim B As Integer
B = B + 1
Debug.Print B
End Function●三次傳回的答案都是1
★Function A是如何產生的呢?●我們可以直接在按鈕上用滑鼠快速點兩下,得到Private Sub Command1_Click(),然而上式裡的Function A()卻找不到可以產生的方法,其實Function A()是自己製造的函數(副程式),該如何產生呢?●按按方向鍵,讓文字游標移到Private Sub Command1_Click() ...... End Sub以外。●先輸入Function A。●輸入完後直接按Enter鍵即可產生全新的自製函數Function A()。○靜態宣告:靜態宣告變數也就是執行該副程式時,電腦會分配固定記憶體位置給變數存放資料,當副程式執行結束而程式碼被移出記憶體時,該記憶體位置保留,再執行該副程式時,電腦又分配相同記憶體位置給變數存放資料,使用相同名稱來當變數而每次執行所分配到的記憶體位置相同,因此該副程式可以享有相同的資訊。◎宣告法,於副程式裡使用Static敘述宣告:
Private Sub ....
Static A As Integer
Static B As Date
Static C As Single
End Sub Private Function ....
Static A As Integer
Static B As Date
Static C As Single
Static D As Object
End Function
●範例程式碼:
Private Sub Command1_Click()
Call A
Call A
Call A
End Sub Function A()
Static B As Integer
B = B + 1
Debug.Print B
End Function●第一次傳回的答案是1●第二次傳回的答案是2●第三次傳回的答案是3
Private Sub Commadn1_Click()
Static a As Integer
Dim sum As Integer
a=a+1
sum=sum+1
print “a=”;a,”aum=”;sum
End Sub
貳、變數的生命週期
在Visual Basic中,根據變數生命週期及影響,大致可分為三個層次:
○Local Variable 區域變數
在程序(包括事件程序、一程序)或函式中宣告的變數皆屬於”程序或函式層次”的變數。
該變數影響的範圍只有在該程序或函式中。
一旦離開該程序,這些變數也隨著消失。
○ Private Variable 私有變數
表單層次
在表單的一般宣告區宣告
該變數影響的範圍函蓋該表單中所有程序函式,生命週期比程序層次的變數還長
例:
Option Explicit
Dim sum As Integer
Private
您可能关注的文档
最近下载
- 海上避碰规则.pptx VIP
- 避碰规则COLREG72-(03中英版).doc VIP
- YY 0068.1-2008 医用内窥镜 硬性内窥镜 第1部分:光学性能及测试方法.pdf
- 故事罗伯特.麦基.doc VIP
- 回肠造口还纳术护理.pptx
- YY0068.3-2008 医用内窥镜 硬性内窥镜 第3部分:标签和随附资料.pdf VIP
- 《YY/T 0068.2-2008医用内窥镜 硬性内窥镜 第2部分:机械性能及测试方法》.pdf
- 统编版八年级语文上册《文学性文本阅读》期中复习专项练习题(带答案).docx VIP
- YY 0068.2-2008医用内窥镜 硬性内窥镜 第2部分:机械性能及测试方法.pdf
- 提升课堂互动的课件设计PPT模板.pptx VIP
文档评论(0)