创建结构后,可以将过程级和模块级变量声明为该类型。 例如,可以创建一个结构来记录有关计算机系统的信息。 下面的示例演示这一操作。
Public Structure systemInfo
Public cPU As String
Public memory As Long
Public purchaseDate As Date
End Structure
现在可以声明该类型的变量。 以下声明说明了这一点。
Dim mySystem, yourSystem As systemInfo
访问结构值
若要从结构变量的元素中分配和检索值,请使用与用于设置和获取对象属性相同的语法。 将成员访问运算符 (.
) 放在结构变量名称和元素名称之间。 以下示例访问以前声明为类型的 systemInfo
变量的元素。
mySystem.cPU = "486"
Dim tooOld As Boolean
If yourSystem.purchaseDate < #1/1/1992# Then tooOld = True
分配结构变量
如果两个变量具有相同的结构类型,也可以将一个变量分配给另一个变量。 这会将一个结构的所有元素复制到另一个结构中的相应元素。 以下声明说明了这一点。
yourSystem = mySystem
如果结构元素是引用类型(例如String
Object
,或数组),则会复制指向数据的指针。 在上一个示例中,如果systemInfo
已包含对象变量,那么上述示例将把指针从mySystem
复制到yourSystem
,并且通过一个结构对对象数据所做的更改将在通过另一个结构访问时生效。