Static (Visual Basic)

指定一或多個宣告的區域變數在宣告該變數的程序終止後,仍持續存在並保留最新的值。

備註

一般而言,一旦程序停止,程序中的區域變數就不再存在。 靜態變數會繼續存在,並保留其最新的值。 下次程式碼呼叫該程序時,變數不會重新初始化,而且仍會保留您予以指派的最新值。 靜態變數會持續存在,時間和予以定義的類別或模組存留期相同。

規則

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

    您無法在結構程序中使用 Static

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

  • 合併的修飾元。 您不能在相同的宣告中同時指定 StaticReadOnlyShadowsShared

行為

當您在 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 陳述式

另請參閱