Crystal 語法自訂函式是運算式導向的,就像 Crystal 語法公式一樣。您可以使用下列任一種語法格式。
Function ([argList])
expressions
Function ([argList])
(
expressions
)
選擇性項目。這是一份變數清單,代表呼叫函式時傳遞到函式的引數。多個變數之間會以逗點隔開。允許空的 argList;不過,括住 argList 的括弧不是選擇性項目,argList 空白時也必須使用。
[Optional] simpleType [Range] [Array] varName [:=defaultValue]
選擇性項目。表示在呼叫自訂函式時,此引數是否可以省略。如果引數是選擇性項目,則所有後續的引數也必須是選擇性項目。如果您在呼叫函式時對選擇性引數提供值,您必須對每一個前置的引數提供值。
必要項目。您可以使用下列其中一項:
選擇性項目。指定引數是否為範圍變數。
注意 您不可使用布林值範圍。
選擇性項目。指定引數是否為陣列變數。
必要項目。代表引數之變數的名稱。
這是選擇性引數的必要項目。defaultValue 是一個常數或常數運算式;也就是說,一個未包含任何變數的運算式,在編譯時可以簡化成常數值。如果在呼叫自訂函式時省略選擇性引數,這時便會使用該引數的預設值。
必要項目。Crystal 語法自訂函式所傳回的值,是運算式順序中最後驗算之運算式的值。此語法與 Crystal 語法公式中的語法相同。
在預設狀況下,自訂函式中的變數宣告為區域範圍。這可以對照 Crystal 語法公式中的變數宣告,其預設值則是全域範圍。