过程概述
- 来源: https://www.freebasic.net/wiki/wikka.php?wakka=ProPgProcedures
- 最后更新: 2022-05-30
各种 FB 过程类型概述。
过程是可以从程序中任何位置执行或调用的代码块,可调用任意次数。执行的代码称为过程体。FreeBASIC 中有两类过程:不返回值的过程和返回值的过程。
Sub(子程序)
Sub 是不返回值的过程。使用 Declare 关键字声明,使用 Sub 关键字定义。声明过程是引入其名称以便调用,过程定义列出调用时将执行的代码语句。只需在程序中使用 sub 的名称即可调用它。
start GeSHi
vb
' 声明子程序 'MyProcedure'
Declare Sub MyProcedure
' 调用过程 'MyProcedure'
MyProcedure
' 定义 'MyProcedure' 的过程体
Sub MyProcedure
Print "the body of MyProcedure"
End Subend GeSHi
将产生以下输出:
the body of MyProcedure注意,调用过程只需要声明。过程可以在代码后面定义,甚至可以在完全不同的源文件中定义。
Function(函数)
Function 是向调用点返回值的过程。可以将 function 调用看作求某个表达式的值,就像变量或对象一样。使用 Declare 关键字声明,使用 Function 关键字定义。function 返回的值类型在声明末尾指定。
start GeSHi
vb
' 声明并定义一个返回整型值的过程
Function MyProcedure As Integer
Return 10
End Function
' 调用该过程,并将返回值存储在变量中
Dim i As Integer = MyProcedure
Print iend GeSHi
将产生以下输出:
10由于定义同时也是声明,过程也可以在定义之后被调用。
调用过程时的一个常见约定是在过程名后放置括号 '()',表示过程调用。但 FreeBASIC 并不要求这样做。
参见
返回 目录