三、參數傳送
在Visual Basic中,通常把形式參數叫做“參數”,而把實際參數叫做“自變量”。
(一)形參與實參
Examda提示: 形參是在Sub、Function過程的定義中出現的變量名,實參則是在調用Sub或Function過程時傳送給Sub或Function過程的常數、變量、表達式或數組。在Visual Basic中,可以通過兩種方式傳送參數,即按位置傳送和指名傳送。
(二)引用
在Visual Basic中,參數通過兩種方式傳送,即傳地址和傳值,其中傳地址習慣上稱為引用。在默認情況下,變量(簡單變量、數組或數組元素以及記錄)都是通過“引用”傳送給Sub或Function過程。在這種情況下,可以通過改變過程中相應的參數來改變該變量的值。這意味著,當通過引用來傳送實參時,可以改變傳送給過程的變量的值。
(三)傳值
傳值就是通過值傳送實際參數,即傳送實參的值而不是傳送它的地址。在這種情況下,系統把需要傳送的變量復制到一個臨時單元中,然后把該臨時單元的地址傳送給被調用的通用過程。由于通用過程沒有訪問變量(實參)的原始地址,因而不會改變原來變量的值,所有的變化都是在變量的副本上進行的。
在Visual Basic中,傳值方式通過關鍵字ByVal來實現。也就是說,在定義通用過程時,如果形參前面的關鍵字ByVal,則該參數用傳值方式傳送,否則用引用(即傳地址)方式傳送。
(四)數組參數的傳送
Visual Basic允許把數組作為實參傳送到過程中。
用數組作為過程的參數時,應在數組名的后面加上一對括號,以免與普通變量相混淆。
四、可選參數與可變參數
Visual Basic6.0提供了十分靈活和安全的參數傳送方式,允許使用可選參數和可變參數。在調用一個過程時,可以向過程傳送可選的參數或者任意數量的參數。
五、對象參數
Examda提示: 對象作為參數與用其他數據類型作為參數的過程沒有什么區別,其格式為:Sub過程名(形參表) 語句塊 [Exit Sub] ……End Sub
“形參表”中形參的類型通常為Control或Form。注意,在調用含有對象的過程時,對象只能通過傳地址方式傳送。因此在定義過程時,不能在其參數前加關鍵字ByVal。
六、局部內存分配
有時候,在過程結束時,可能不希望失去保存在局部變量中的值。如果把變量聲明為全局變量或模塊級變量,則可解決這個問題。但如果聲明的變量只在一個過程中使用,則這種方法并不好。為此,Visual Basic提供了一個Static語句,其格式如下:
Static變量表
其中“變量表”的格式如下:
變量[()][As類型][,變量[()][As類型]]……
七、Shell函數
Shell函數的格式如下:
Shell(命令字符串[,窗口類型])
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |