Name
Structure...End Structure Statement
Syntax
Public|Private|Friend] StructureStructureName
Nonmethod member declarations
Method member declarations
End Structure
Description
Used to declare user-defined types. Structures are similar to classes, but they are value types rather than reference types.
Rules at a Glance
The members of a structure can be variables, properties, methods, or events. Note, however, that each member must be declared with an access modifier:
Public
(orDim
),Private
, orFriend
.You cannot assign a structure member an initial value at the same time as you declare it. As a result, the following
Structure
construct is illegal:Structure Point Public x As Integer = 0 ' Illegal Public y As Integer = 0 ' Illegal End Structure
Structure members can be other structures or objects.
If a structure member is an array, it cannot be explicitly dimensioned.
Structures can be passed as arguments to functions or as the return type of a function.
Although structures are similar to classes, the following class features are not supported in structures:
Structures cannot explicitly inherit, nor can they be inherited.
All constructors for a structure must be parameterized.
Structures cannot define destructors.
Member declarations cannot include initializers, nor can they use the
As
New
syntax or specify an initial array size.
Example
The simplest and most common use of structures is to encapsulate related variables. For instance, we might define a structure as follows:
Structure strPerson ...
Get VB .NET Language in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.