Optional ByRef - wrong in VB.NET?
Public Function Foo(ByRef a As AClass, _
Optional ByRef b As BClass = Nothing, _
Optional ByRef c As CClass = No开发者_如何学JAVAthing) As XClass
Error : Optional parameters must specify a default value.
Was is Das?
This compile fine for me with empty classes. I seem to think you have you error in other line, or on define of the parameter classes.
Public Class Class1
Public Function Foo(ByRef a As aclass, _
Optional ByRef b As bclass = Nothing, _
Optional ByRef c As cclass = Nothing) As xclass
Return Nothing
End Function
End Class
Public Class aclass
End Class
Public Class bclass
End Class
Public Class cclass
End Class
Public Class xclass
End Class
If this is the pattern that you want to use I'd recommend creating an overload that doesn't require those parameters:
Public Function Foo(ByRef a As AClass) As XClass
Return Foo(a, Nothing, Nothing)
End Function
Public Function Foo(ByRef a As AClass, ByRef b As BClass, ByRef c As CClass) As XClass
'//Return XClass here
End Function
精彩评论