發新話題

Visual Basic 教學 - 《關於變數》瞭解變數的範圍

Visual Basic 教學 - 《關於變數》瞭解變數的範圍

瞭解變數的範圍
變數的範圍定義了能夠知曉該變數存在的程式碼範圍。當您在程序內部宣告變數時,只有程序內部的程式碼才能存取或改變此變數的值;它有一個只對該程序有效的區域範圍。但是,有時您需要使用具有更大範圍的變數,例如其值對於同一模組內的所有程序都有效的變數,甚至對於整個應用程式的所有程序都有效。Visual Basic 允許您在宣告變數時指定它的範圍。
指定變數的有效範圍
變數可以被宣告為程序層次 (區域變數) 或模組層次的變數,主要取決於宣告變數時採用的方式。
有效範圍PrivatePublic
程序層次變數對於所在程序是私有的。不可使用。您無法在程序中宣告公用變數。
模組層次變數對於所在模組是私有的。變數可用於所有模組。
 
程序內部使用的變數
程序層次變數只有在宣告它們的程序中才能被識別,也就是所謂的區域變數。您可以用 Dim 或者 Static 保留字來宣告它們。例如:
Dim intTemp As Integer- 或 -
Static intPermanent As Integer在應用程式執行階段,用 Static 宣告的區域變數的值會一直存在;而用 Dim 宣告的變數只在程序執行期間才存在。
對任何暫存計算來說,區域變數是最佳選擇。舉例而言,您可以建立十幾個不同的程序,每個程序都包含名稱為 intTemp 的變數。只要每個 intTemp 都宣告為區域變數,那麼每個程序都只識別自己的 intTemp。任何一個程序都都能夠改變它的 intTemp 變數值,而不會影響其它程序中的 intTemp 變數。
模組內部使用的變數
根據預設值,模組層次變數對該模組的所有程序都有效,但無法給其它模組的程式碼使用。您可以在模組頂端的宣告區塊使用 Private 關鍵字宣告,從而建立模組層次變數。例如:
Private intTemp As Integer在模組層次,Private 和 Dim 之間沒有什麼差別;但 Private 較好些,因為可以很容易把它和 Public 區別開來,使得程式碼更易瞭解。
所有模組使用的變數
要讓模組層次的變數在其它模組中也有效,您可以用 Public 保留字宣告變數。公用變數中的值對應用程式中的所有程序都有效。與所有模組層次變數一樣,公用變數也是在模組頂端的宣告區塊中宣告。例如:
Public intTemp As Integer附註 您不能在程序中宣告公用變數,只能在模組的宣告區塊中宣告公用變數。

請參閱:進階變數主題

TOP

發新話題

本站所有圖文均屬網友發表,僅代表作者的觀點與本站無關,如有侵權請通知版主會盡快刪除。