-3

下のコードでは、そのExit Function下に緑色の線が表示されています。

ヌル参照例外は、すべてのパスが値を返すわけではありません。

終了して終了時に何かを返すにはどうすればよいですか?

手伝ってもらえますか?

    Protected Sub Page_Load()

        test()

    End Sub



    Function test() As String

        Exit Function

        Return ""

    End Function
4

3 に答える 3

5

行を削除して、Exit Function必要なものを返すだけです。それとも、プログラムを完全に終了しますか?それらは2つの異なるものです。

于 2013-01-18T14:51:58.797 に答える
3

通常は、またはReturnを終了し、から値を返すために使用します。FunctionSubFunction

Function MyMethod() As String
    Return "Some Stuff"
End Function

Exitから値を返すために使用する場合は、に値Functionを「割り当てる」必要がありますFunction(実際には、コンパイラは返される変数を内部的に作成します)。

Function MyMethod() As String
    MyMethod = "Some Stuff"

    Exit Function
End Function

ただし、を使用する必要がありますReturn。このExitステートメントは、古い、非推奨のVB6レガシーです。

于 2013-01-18T15:03:55.337 に答える
1

呼び出しReturnも関数を終了します。Exit Functionを呼び出す必要はありません(実際には、決して呼び出さないでください)。また、関数を使用する場合は、関数の結果を変数に割り当てる必要があります。

Protected Sub Page_Load()

    Dim result As String = test()
    'Do something with result

End Sub

Function test() As String

    Return "test string"

End Function
于 2013-01-18T15:02:55.887 に答える