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.