Euphoria 过程 - Euphoria教程

过程是一组可重用的代码,可以在你的程序中的任何地方调用。这消除了需要一次又一次地写相同的代码。这将帮助程序员写的代码模块化。

像任何其他预先编程语言,Euphoria 也支持写模块化的代码使用程序所需的所有功能。你会看到详细的功能在随后的章节。

你一定见过程序,如printf() 和 length()在前面的章节。我们使用这些程序,一遍又一遍,但他们已经写在核心Euphoria 只有一次。

Euphoria 让我们写我们自己的程序。本节将解释你如何编写自己的程序在Euphoria 中。

过程定义:

在我们使用过程之前,我们需要定义过程。定义一个过程,在兴奋的是最常用的方法,通过使用关键字procedure ,其次是一个独特的过程的名称,参数列表(可能为空),end procedure 语句块结束。基本语法如下所示:

procedure procedurename(parameter-list)

  statements
  ..........

end procedure

例子:

一个简单的procedure 称为sayHello不带参数的定义在这里:

procedure  sayHello()
   puts(1, "Hello there")
end procedure

调用过程:

以后在脚本中要调用一个程序的地方,简单的需要编写该过程的名称如下:

#!/home/euphoria-4.0b2/bin/eui

procedure  sayHello()
   puts(1, "Hello there")
end procedure 

-- Call above defined procedure.
sayHello()

这将产生以下结果:

Hello there

过程参数:

到现在我们已经看到不带参数的过程。但是有一个设施,传递不同的参数,同时调用过程。这些传递的参数里面的程序可以被捕获,并在这些参数可以做任何操作。

过程可以用逗号分隔的多个参数。

例子:

让我们sayHello的过程中我们做了一点修改。这一次,它带两个参数:

#!/home/euphoria-4.0b2/bin/eui

procedure sayHello(sequence name,atom  age)
   printf(1, "%s is %d years old.", {name, age})
end procedure

-- Call above defined procedure.
sayHello("zara", 8)

这将产生以下结果:

zara is 8 years old.