3

VB.NET 2012 (Visual Studio 2012) は初めてです。

次のエラー メッセージをどのように理解すればよいのでしょうか。

 'Return' statement in a Sub or a Set cannot return a value.

焦点は「サブまたはセット」にあります。

興味がある場合は、さまざまな方法でメッセージを印刷しようとしています.

4

4 に答える 4

6

サブまたはセットはどのように理解されますか?

ASubは戻り値のないメソッドです。

Sub DoSomething()
    …
End Sub

Function(戻り値を持つメソッドである a とは対照的です。)

ASetはプロパティのセッターです。

Property X() As String
    Get
        Return SomeValue
    End Get
    Set(Value As String)
        SomeValue = Value
    End Set
End Property

プロパティの getter および関数とは異なり、Subs およびter は値を返さないため、ステートメントをSet含めることはできません(値を返さずに途中でメソッドを終了する、またはと同等のネイキッドを含めることができます)。Return XReturnExit SubExit Property

于 2012-11-02T07:57:27.963 に答える
0

Sub では何かを返すことはできませんが、Function ではできます。

ここを参照してください:

http://msdn.microsoft.com/en-us/library/d03wadb1(v=vs.80).aspx

于 2012-11-02T07:54:19.930 に答える
0

aまたは aにReturnステートメントが必要で、値を返そうとしています。そんなことはできません。SubSet

Sub Something
    Return 1 ' Error
End Sub

値を返す必要がある場合は、関数が必要です。

Function Something As Integer
    Return 1 ' Ok
End Function
于 2012-11-02T07:50:34.960 に答える
0

Sub では、Return ステートメントを使用できますが、「値を指定して」は使用できません。つまり、次のようになります。

Sub MySub()
  Return ' this is OK. It is optional (you do not HAVE to have a Return in a Sub).
End Sub

しかし

Sub MySub()
  Return 3 ' this is WRONG
End Sub

Property_SET では、Return ステートメントをまったく使用できません。(一方、Property_GET では、Property の TYPE に準拠する値を持つ Return ステートメントが必要です。

Property MyProperty() As Integer
  Get
    ' do all kinds of stuff
    Return 3 ' Returns as integer-type value
  End Get
  Set(value as Integer)
    ' do stuff
    Return ' WRONG
    Return 3 ' also WRONG
  End Set
End Property
于 2012-11-02T08:05:28.980 に答える