VB.NET Function Sub 違い

 

こんにちは、ひろにも です。

前回の続きで関数について詳しく見ていきましょう。今回は、FunctionとSubについてまとめていきます。

 

Function と Sub について

まずFunctionについてですが、Functionとは戻り値をもつ関数のこと。

前回使用した、2の倍数を作る関数を見てみましょう。

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        '値を変数にする
        Dim value As Integer = CInt(txtValue.Text)
        '値を2倍にする
        lblAnswer.Text = Kake2(value)
    End Sub

    Private Function Kake2(ByVal p_value As Integer) As Integer
        Kake2 = p_value * 2
    End Function

 

Kake2という関数は、Functionで作成されているため、戻り値は、Integer型で返すよう書かれています。

 

次に、Subについてですが、Subとは戻り値をもたない関数のこと。

Public Class Form1
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        '値を変数にする
        Dim value As Integer = CInt(txtValue.Text)
        Kake2_Sub(value)
    End Sub

    Private Sub Kake2_Sub(ByVal p_value As Integer)
        lblAnswer.Text = p_value * 2
    End Sub

End Class

 

Kake2_Subという関数は、Subで作られているため、戻り値を持たない関数となっています。

例の結果は、どちらも同じ結果になりますが、FunctionとSubにはそれぞれ、意味がありますので、しっかりと理解しておきましょう。

まとめ

ポイント
  • Functionとは、戻り値を持つ関数
  • Subとは、戻り値を持たない関数

この2つの違いだけ、覚えておきましょう。

次は、関数で使用する引数、ByVal、ByRefの違いについてまとめていきます。

 

VB.NETの記事一覧

おすすめの記事