- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
壹、變數宣告有分成動態宣告、靜態宣告
○動態宣告:由於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 Sub C
您可能关注的文档
最近下载
- 15《小岛》(说课课件)部编版语文五年级上册.pptx VIP
- 含电容电路含电容电路.doc VIP
- TED中英双语演讲稿Why we love, why we cheat.pdf VIP
- 债券借贷视角看利率.pptx VIP
- 画法几何及机械制图(第6版)课后习题答案解析.pdf
- GB/T 19024-2025质量管理体系 面向质量结果的组织管理 实现财务和经济效益的指南.pdf
- 党课讲稿:从网络大国走向网络强国,让互联网点亮我们的生活.doc VIP
- ARC低压无功补偿装置安装使用说明书(安瑞科液晶显示).pdf VIP
- 班主任如何培养班干部(课件PPT).pptx VIP
- 深圳市历年中考真题及答案2025.doc VIP
原创力文档


文档评论(0)