言語仕様に関してはYAmaGNZ様がおっしゃっている通りです。
リンクは引用させていただきました。
宣言の仕方は以下の記述でできます。
Microsoft-構造体を宣言する
vb
1<アクセス修飾子> Structure <構造体名>
2 ...何かしらの変数...
3End Structure
4
変数の代入、別のフォーム(クラス)の構造体を参照するには以下のコードで学習の助けになれば幸いです。
以下のコードのアクセス修飾子を変更して、他クラスから参照可能かどうかを試してみると分かりやすいと思います。
Microsoft-スコープについて
vb
1
2Public Class Form1
3
4 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
5
6 Dim struct_Public As Form2.StructFomr2_Public
7 'struct_Public.a = "A" ''アクセス修飾子がPrivateなので見えない。
8 struct_Public.b = "B" ''構造体変数への代入
9
10 'Dim struct_Private As Form2.StructForm2_Private ''アクセス修飾子がPrivateなので見えない。
11
12 Dim class1 As Class1
13 'class1.b = "B" ''インスタンス化してないのでエラー
14
15 class1 = New Class1
16 class1.b = "B"
17
18 End Sub
19
20End Class
21
vb
1Public Class Form2
2
3 Public Structure StructFomr2_Public
4 Private a As String
5 Public b As String
6 End Structure
7
8 Private Structure StructForm2_Private
9 Private a As String
10 Public b As String
11 End Structure
12
13End Class
vb
1Public Class Class1
2 Private a As String
3 Public b As String
4End Class
5
クラスと構造体は参照型か値型になるかが大きな違いです。
使い分けは以下のリンクを参照してみてください。
Microsoft-クラスまたは構造体の選択
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。