共用方式為


Static (Visual Basic)

指定一個或多個宣告的區域變數會繼續存在,並在宣告它們的程序終止之後保持其最新的值。

備註

通常,一旦程序停止後,程序中的區域變數就不復存在, 而靜態變數會繼續存在並保留其最新值。 下次當程式碼呼叫程序時,不會重新初始化變數,而且它仍會保存您指派給它的最新值。 只要在其中定義靜態變數的類別或模組存在,靜態變數就會繼續存在。

規則

  • **宣告內容:**您只能在區域變數上使用 Static。 這表示 Static 變數的宣告內容必須是程序或程序內的區塊,而且它不能是原始程式檔 (Source File)、命名空間、類別、結構或模組。

    您不可在結構程序內使用 Static。

  • 無法推斷 Static 區域變數的資料型別。 如需詳細資訊,請參閱區域型別推斷 (Visual Basic)

  • **組合的修飾詞:**您無法在同一個宣告中同時指定 Static 與 ReadOnly、Shadows 或 Shared。

行為

當您宣告中的靜態變數Shared程序中,此靜態變數只有一個複本適用於整個應用程式。 您呼叫Shared程序,使用類別名稱、 非指向類別的執行個體變數。

當您宣告靜態變數中的程序不是Shared,只有一個變數的複本可用每個執行個體的類別。 您可以使用此變數會指向特定類別的執行個體,以呼叫非共用的程序。

範例

以下範例將說明 Static 的用法。

Function updateSales(ByVal thisSale As Decimal) As Decimal
    Static totalSales As Decimal = 0
    totalSales += thisSale
    Return totalSales
End Function

Static 變數 totalSales 只會初始化為 0 一次。 每次輸入 updateSales 時,totalSales 仍具有您為它計算的最新值。

Static 修飾詞可用於以下內容中:

Dim 陳述式 (Visual Basic)

請參閱

參考

Shadows (Visual Basic)

Shared (Visual Basic)

概念

Visual Basic 中的存留期

Visual Basic 中的變數宣告

區域型別推斷 (Visual Basic)

其他資源

結構 (Visual Basic)

Visual Basic 中的物件和類別