質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

Q&A

解決済

4回答

643閲覧

VB.NET 構造体について

退会済みユーザー

退会済みユーザー

総合スコア0

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

0グッド

1クリップ

投稿2018/10/11 10:33

こんばんわです。。
連日の質問となってしまい申し訳ないのですが、構造体について教えていただきたく、質問させていただきました
自分は変数の値等をいつもモジュールにまとめていて、Publicで宣言して値を呼び出しているのですが、
色々調べているうちに クラスと構造体にたどり着きました
ですが、自分はどちらも使ったことがなく、調べてみたのですが、構造体の使い方がサイトによって使い方が異なっていて、使い方がわからなく困っています

宣言のしかた
構造体への値の代入方法
別フォームから構造体の値を持ってくる方法

この三つが知りたいです、、
どなたかソースで教えていただけると助かります、、
よろしくお願いします。。。

※構造体は同じ変数の型をまとめておくことができるもの、、ということだけは調べてわかりました、、です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

ベストアンサー

言語仕様に関しては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-クラスまたは構造体の選択

投稿2018/10/11 20:11

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

削除しました。。。。。。

投稿2018/10/11 12:26

編集2018/10/11 12:39
akirafudo6

総合スコア341

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Public Class ConstClass
Structure Z_X
Private Shared ReadOnly _ZXXVALUE_IRYOUKOUJOMAX As Integer = 2000000
Public Shared ReadOnly Property ZXXVALUE_IRYOUKOUJOMAX() As String
Get
Return _ZXXVALUE_IRYOUKOUJOMAX
End Get
End Property
こんな感じで定義します。使う場合、各プロジェクト、クラスなどで組み込み、およびIMPORTする必要があります。

End Structure

投稿2018/10/11 12:25

編集2018/10/11 12:38
akirafudo6

総合スコア341

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

構造体などを参照してください。
別フォームから構造体の値を持ってくる方法に関しては、スコープについて学習してください。

投稿2018/10/11 11:07

YAmaGNZ

総合スコア10258

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問