跳转至内容

Gambas/子例程

来自 Wikibooks,一个开放世界的开放图书

Gambas 中的子例程是一段作为块保存的代码,可在程序中的很多部分使用。您不必重复编写它。例程可以根据其返回类型返回一个值。例如,我们可以返回一个字符串或整数。让我们检查下面的示例

 Public Sub Multiplying() As String
   Dim n, v1, v2 As Integer 
   Dim res As String
   n = 4 'multiplied by 9
   v1 = (n - 1) '3
   v2 = (10 - n) '6
   res = v1 & v2 'result 36
   Print res '4*9=36
   Return "9*" & n & "=" & res
 End

稍后我们可以在主程序中使用该子例程,如下所示

 Public Sub Form_Open()
   Message.Info(Multiplying())
 End

正如我们在上面的例子中看到,我们在写 close 之后的 AS 后声明子例程的返回类型,这与子例程的名称紧密相关。有一些与窗口程序的事件相连接的内置子例程。例如,当表单打开时触发的 Form_Open()。在基于面向对象原理的类中使用的子例程的特殊名称是方法。简单地说:子例程是可重复使用的代码部分。我们代码中的另一个示例可能是

 Public Sub sayHello()
   Message.Info("Hello Maria")    
 End

创建子例程后,我们可以用类似的方式使用它

 Public Sub Form_Open()
  sayHello()
  Message.Info(Multiplying())
 End
华夏公益教科书