DOBON.NET プログラミング道: .NET Framework, VB.NET, C#, Visual Basic, Visual Studio, インストーラ, ...

構造体を宣言する

VB6では、Type ...End Type構造を使用して構造体を宣言していました。VB.NETではこれがなくなり、Structureステートメントを使用して構造体を宣言することになります。

.NETの構造体はプロパティやメソッドを持つことができ、インターフェイスを実装でき、パラメータ化されたコンストラクタを持つこともできるといった具合に、クラスの機能のほとんどをサポートしているため、両者はとても似通っています。しかし構造体は値型で、クラスは参照型という大きな違いがあります。それ以外にも構造体は継承ができない、イベントを扱えないなどの点でクラスと異なります。このため一般的には、小さなデータを頻繁に扱う場合は構造体のほうが処理が早いと言えそうです。詳しくはヘルプの「構造体とクラス」をご覧ください。

以下に簡単な構造体の宣言と使用法を示します。

VB.NET
コードを隠すコードを選択
'構造体の宣言
Public Structure Test1
    Private messageString As String
    Public Property Message() As String
        Get
            Return messageString
        End Get
        Set(ByVal Value As String)
            messageString = Value
        End Set
    End Property
    Public Sub PrintMessage()
        Console.WriteLine(messageString)
    End Sub
End Structure

Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button1.Click
    Dim sTest1 As Test1
    sTest1.Message = "これはテストです。"
    sTest1.PrintMessage()
End Sub

注意:この記事では、基本的な事柄の説明が省略されているかもしれません。初心者の方は、特に以下の点にご注意ください。

  • .NET Tipsをご利用いただく際は、注意事項をお守りください。