Vb.net 是不返回任何内容还是只返回don';我什么也不退

Vb.net 是不返回任何内容还是只返回don';我什么也不退,vb.net,visual-studio-2010,visual-studio,Vb.net,Visual Studio 2010,Visual Studio,最初不返回值的函数应该返回Nothing(Visual Studio在结束函数语句中放置一个绿色曲线,询问您是否忘记返回值),还是我可以忽略VS的提示?返回Nothing或任何内容会产生什么影响 tl;dr:这个示例代码应该返回什么也不返回还是不需要?欢迎澄清 Public Shared sCaminhoGravacaoXML As String = "C:\XMLData\" Public Shared Function VerificaPastasXML()

最初不返回值的函数应该返回
Nothing
(Visual Studio在
结束函数
语句中放置一个绿色曲线,询问您是否忘记返回值),还是我可以忽略VS的提示?返回
Nothing
或任何内容会产生什么影响

tl;dr:这个示例代码应该返回
什么也不返回
还是不需要?欢迎澄清

    Public Shared sCaminhoGravacaoXML As String = "C:\XMLData\"

    Public Shared Function VerificaPastasXML()

        If Not IsNothing(sCaminhoGravacaoXML) And sCaminhoGravacaoXML <> "" Then

            Dim sRaiz As String = sCaminhoGravacaoXML

            If Not FileIO.FileSystem.DirectoryExists(sRaiz) Then
                FileIO.FileSystem.CreateDirectory(sRaiz)
            End If

            If Not Directory.Exists(sRaiz & "tempXML") Then
                Dim diInfo As DirectoryInfo = Directory.CreateDirectory(sRaiz & "tempXML")
                diInfo.Attributes = FileAttributes.Directory Or FileAttributes.Hidden
            End If

        Else
            sErroBaixaXML = "Não foi possível montar a estrutura de pastas para os arquivos" & vbCrLf & "XML de NFe, favor consultar os parâmetros da filial!"
        End If

    End Function
公共共享sCaminhoGravacaoXML为String=“C:\XMLData\” 公共共享函数VerificationCapastasXML() 如果不是Nothing(sCaminhoGravacaoXML)和sCaminhoGravacaoXML“”,则 Dim sRaiz As String=sCaminhoGravacaoXML 如果不存在FileIO.FileSystem.DirectoryExists(sRaiz),则 FileIO.FileSystem.CreateDirectory(sRaiz) 如果结束 如果目录不存在(sRaiz&“tempXML”),则 Dim diInfo作为DirectoryInfo=Directory.CreateDirectory(sRaiz&“tempXML”) diInfo.Attributes=FileAttributes.Directory或FileAttributes.Hidden 如果结束 其他的 SrRoBuxxAxML =“n nO-ofi POSSIVE蒙塔尔A Etututura de Pasas PARA OS AQuiVOS”和VBCRLF和“XML de NFE,有利于咨询系统OS PATA MeLTS DA孝顺!” 如果结束 端函数
与SUB相比,vb.net中的函数必须返回没有返回值的内容。如果不想返回值,只需将其从函数更改为子函数。

与子函数相比,vb.net中的函数必须返回没有返回值的内容。如果不想返回值,只需将其从函数更改为子函数。

与子函数相比,vb.net中的函数必须返回没有返回值的内容。如果不想返回值,只需将其从函数更改为子函数。

与子函数相比,vb.net中的函数必须返回没有返回值的内容。如果你不想返回一个值,只要把它从函数改为子。< /p> 如果你没有返回一个值,这实际上是VB.NET-考虑使用子而不是函数,这意味着你没有返回一个值。 但是,在大多数其他语言中,不返回任何内容是可以的,因为函数本身将返回null/Nothing


此外,一些代码分析工具会像您一样始终以这种或那种方式使用返回语句,因此一些开发人员希望您显式地声明该语句,以确保可读性
此外,一些代码分析工具会像您一样始终以这种或那种方式使用返回语句,因此一些开发人员希望您显式地声明该语句,以确保可读性
此外,一些代码分析工具会像您一样始终以这种或那种方式使用返回语句,因此一些开发人员希望您显式地声明该语句,以确保可读性 此外,一些代码分析工具会像您一样始终以这种或那种方式使用返回语句,因此一些开发人员希望您显式地声明该语句,以确保可读性

这个示例代码应该什么都不返回还是不需要

因为它从不返回值,所以它应该是
Sub
<代码>函数向读者暗示返回了一个值,因此您的函数看起来像现在一样有问题,让所有必须维护它的人都感到困惑

从技术上讲,如果没有明确的
return
语句,则
函数会自动返回返回数据类型的默认值。因此,您的函数(使用返回类型
Object
隐式声明)将返回
Nothing
;返回类型为
Integer
的函数将返回
0
,以此类推

由于忘记返回值是导致错误的常见原因,因此这里的警告将帮助您。如果要返回默认值,最好使用显式的
return
语句来明确这一点


< P> >请考虑激活以避免此类隐式声明。

Public Shared Function VerificaPastasXML() As Boolean
这个示例代码应该什么都不返回还是不需要

因为它从不返回值,所以它应该是
Sub
<代码>函数
向读者暗示返回了一个值,因此您的函数看起来像现在一样有问题,让所有必须维护它的人都感到困惑

从技术上讲,如果没有明确的
return
语句,则
函数会自动返回返回数据类型的默认值。因此,您的函数(使用返回类型
Object
隐式声明)将返回
Nothing
;返回类型为
Integer
的函数将返回
0
,以此类推

由于忘记返回值是导致错误的常见原因,因此这里的警告将帮助您。如果要返回默认值,最好使用显式的
return
语句来明确这一点


< P> >请考虑激活以避免此类隐式声明。

Public Shared Function VerificaPastasXML() As Boolean
应该这样吗