Function过程

简介: 与内部函数一样,是一个可以反复使用的程序段,在其他程序段中均可以通过调用来执行这段程序,完成既定工作

上一篇中我讲到了VB通用过程中的Sub过程,今天我来讲讲它的“另一半”----Function过程


概念


也称函数

与内部函数一样,是一个可以反复使用的程序段,在其他程序段中均可以通过调用来执行这段程序,完成既定工作


声明


[Private|Public|Static] Function 函数名([参数表] [AS类型])


     [函数体]


     [<函数名>=<表达式>]


     [Exit Function]


End Function


  • 与Sub过程差不多。但Function过程有返回值。声明Function过程要指明数据类型,实际上是返回值的数据类型,默认为Variant类型


  • [<函数名>=<表达式>]若省略,则该过程返回一个默认值:数值型函数过程返回0,字符串函数过程返回空字符串。<表达式>的值是函数返回的结果,通过赋值语句将值赋给<函数名>,该值就是Function过程的返回值


什么时候使用?


function过程同sub过程一样,都是当不同的事件要执行一段相同的代码,这时就可以使用function过程,减少重复代码的使用,避免冗长


优点


防止了程序中代码的反复书写


建立


1.在“代码窗口”直接输入Function过程


2.选择“工具”菜单中的添加过程命令定义Function过程,选择“函数类型”


20200312100116222.png


调用


1.使用Call语句


Call 函数名(参数1,参数2,……)


2.直接使用函数名


如果直接使用函数名的调用方法有两种形式:


  • 如果函数有返回值,一般如下形式调用:被赋值对象=函数名(实际参数1,实际参数2,……)
  • 如果放弃函数的返回值:函数名 实际参数1,实际参数2,……


光说不练假把式,来看看实例吧!


'-----------------------------------------------
'输入三个数求最大值
'-----------------------------------------------
Private Sub Form_Load()
    Dim a%, b%, c%, d%
    Show
    a = Val(InputBox("请输入一个整数"))
    b = Val(InputBox("请输入一个整数"))
    c = Val(InputBox("请输入一个整数"))
    d = Max(a, b)
    Print "三个整数中最大的数是:"; Max(d, c)
End Sub
Function Max(m%, n%) As Integer
    If m > n Then
        Max = m
    Else
        Max = n
    End If
End Function


VB中的Sub过程和Function过程我都讲完了,那你们有没有想过这个问题呢?既然Sub过程和Function过程的用法这么相似,为什么VB通用过程中还要有两个过程呢?一个不就好了吗?非也非也,既然定义了两个,那肯定他们呢就有不同之处啦!


Sub过程和Function过程的区别:


  • Subs是子程序,只作为一个基本的独立语句调用,没有返回值
  • 而function过程也称为函数,有有返回值


注:如果在同一个模块中,同一个变量名不能既用作sub过程又用过function过程

相关文章
|
3月前
【Azure Function】在Function执行中遇见Timeout错误
【Azure Function】在Function执行中遇见Timeout错误
|
4月前
|
JSON Java Serverless
函数计算操作报错合集之报错Function time out after该怎么办
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
6月前
|
JavaScript 前端开发
【专栏】`Function.prototype.apply` 在JavaScript中用于动态设定函数上下文(`this`)和参数列表
【4月更文挑战第29天】`Function.prototype.apply` 在JavaScript中用于动态设定函数上下文(`this`)和参数列表。它接受两个参数:上下文对象和参数数组。理解`apply`有助于深入JS运行机制。文章分三部分探讨其原理:基本概念和用法、工作原理详解、实际应用与注意事项。在应用中要注意性能、参数类型和兼容性问题。`apply`可用于动态改变上下文、传递参数数组,甚至模拟其他语言的调用方式。通过深入理解`apply`,能提升代码质量和效率。
37 3
|
6月前
|
存储 JavaScript 前端开发
js开发:请解释什么是回调函数(callback function),并给出一个示例。
回调函数是JavaScript中处理异步编程的一种常见模式,常用于事件驱动和I/O操作。它们作为参数传递给其他函数,在特定条件满足或任务完成后被调用。例如,`asyncOperation`函数接受回调函数`handleResult`,在模拟的异步操作完成后,调用`handleResult`并传递结果。这使得程序员能在操作完成后执行后续任务。
74 1
|
6月前
|
前端开发 JavaScript Java
这些 function 的细节你都知道吗?
这些 function 的细节你都知道吗?
这些 function 的细节你都知道吗?
|
存储
函数简介(function)
函数简介(function)自制脑图 函数也是一个对象,对象是内存中专门用来存储数据的一块区域。函数可以用来保存一些可执行的代码,并且可以在需要时,对这些语句进行多次的调用。函数名必须要符号标识符的规范 可以包含字母,数字,下划线,但是不能以数字开头)函数中保存的代码不会立即执行,需要调用函数代码才会执行 调用函数: 函数对象() 定义函数一般都是要实现某种功能
90 0
函数简介(function)
|
索引
记忆函数——Memorize Function
记忆函数——Memorize Function
106 0
|
JavaScript
关于jQuery中toggle参数callback函数提前执行问题
关于jQuery中toggle参数callback函数提前执行问题
97 0
|
测试技术 C语言
Function(函数)
Function(函数)
100 0
|
Web App开发 JavaScript 前端开发
从规范去看Function.prototype.call到底是怎么工作的?
从规范去看Function.prototype.call到底是怎么工作的?
从规范去看Function.prototype.call到底是怎么工作的?