結構變數
更新:2007 年 11 月
一旦建立結構之後,您可以將程序層次及模組層次變數宣告為該型別。例如,您可以建立一個結構,來記錄關於電腦系統的資訊。以下範例就是示範這項作業。
Public Structure systemInfo
Public cPU As String
Public memory As Long
Public purchaseDate As Date
End Structure
接著您可以宣告該型別的變數。下面這個宣告可說明這點:
Dim mySystem, yourSystem As systemInfo
注意事項: |
---|
在類別 (Class) 及模組中,使用可進行公用存取的 Dim 陳述式 (Visual Basic) 預設值來宣告結構。如果您希望結構是私用的,請確定使用 Private (Visual Basic) 關鍵字來宣告結構。 |
存取結構值
若要指派並擷取結構變數元素的值,使用的方法與在物件上設定並取得屬性的語法相同。您可以在結構變數名稱與項目名稱之間,放置成員存取運算子 (Member Access Operator) (.)。下列範例會存取之前宣告為型別 systemInfo 的變數項目。
mySystem.cPU = "486"
Dim tooOld As Boolean
If yourSystem.purchaseDate < #1/1/1992# Then tooOld = True
指派結構變數
若兩變數都屬於相同的結構型別,您也可以將一變數指派至另一變數。這樣會將結構的所有項目都複製到另一個結構的對應項目。下面這個宣告可說明這點:
yourSystem = mySystem
如果結構元素是一個參考型別,例如 String、Object 或陣列,則會複製資料指標。在前述範例中,如果 systemInfo 包含物件變數,則會將指標從 mySystem 複製到 yourSystem,並透過存取其他結構時可能生效的結構,來變更物件資料。