Function过程的声明语法

 我来答
小伙53CK
2016-05-30
知道答主
回答量:94
采纳率:100%
帮助的人:24万
展开全部

声明 Function 过程的语法如下所示:
[ modifiers ] Function functionname [( parameterlist )] As returntype
' Statements of the Function procedure.
End Function
modifiers 可以指定与重载、重写、共享和隐藏相关的访问级别和信息。有关更多信息,请参见 Function 语句 (Visual Basic)。
声明每个参数的方法与声明 Sub 过程的方法相同。
数据类型
每个 Function 过程都具有数据类型,就和每个变量都具有数据类型一样。此数据类型由 Function 语句中的 As 子句指定,它确定函数返回给调用代码的值的数据类型。下面的示例声明演示了这一点。
复制代码
Function yesterday() As Date
End Function
Function findSqrt(ByVal radicand As Single) As Single
End Function有关更多信息,请参见 Function 语句 (Visual Basic) 中的“各部分说明”。
返回值
Function 过程发送回调用代码的值称为它的“返回值”。此过程使用以下两种方式之一返回此值:
它在过程的一个或多个语句中给自己的函数名赋值。在执行 Exit Function 或 End Function 语句之前,控制不会返回调用程序。下面的示例演示这一点。
Function functionname [( parameterlist )] As returntype
' The following statement does not transfer control back to the calling code.
functionname = expression
' When control returns to the calling code, expression is the return value.
End Function
它使用 Return 语句指定返回值,并直接将控制返回调用程序。下面的示例演示这一点。
Function functionname [( parameterlist )] As returntype
' The following statement immediately transfers control back to the calling code and returns the value of expression .
Return expression
End Function
将返回值分配给函数名的优点是,直到控制遇到 Exit Function 或 End Function 语句时才从过程返回控制。这样就可以先分配一个初步的值,以后如有必要再进行调整。
有关更多信息,请参见 Function 语句 (Visual Basic) 中的“返回值”。
返回数组
如果 Function 过程返回数组数据类型,则不能在函数内部访问数组的各个元素。如果试图这样做,编译器会将它解释为对过程的递归调用。下面的示例演示这一点。
Function allOnes(ByVal n As Integer) As Integer()
For i As Integer = 1 To n - 1
' The following statement generates a COMPILER ERROR .
allOnes(i) = 1
Next i
' The following statement generates a COMPILER ERROR .
Return allOnes()
End Function
在前面的示例中,编译器将尝试的赋值 allOnes(i) = 1 解释为对赋值语句左边的 allOnes 的调用。它将尝试的 Return allOnes() 解释为没有参数的调用。两个语句都将生成编译器错误。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式