跳轉至內容

Curl/示例 3

來自華夏公益教科書
{curl 5.0, 6.0 applet}

|| A procedural example

{value
    let my-table:Table = {Table}

    {my-table.add {row-prototype "Number", "Square", "Cube"}}
   
    {for i:int = 1 to 25 do
        let square:int = i*i
        let cube:int = square*i
        {my-table.add {row-prototype i, square, cube}}
    }

    my-table
}

以上示例展示了一些簡單的過程程式碼,用於建立包含數字 1-25 以及平方值和立方值的表格。第 1-3 行如上所述。

第 4 行開始一個值塊 - 這是在作用域內隱藏程式碼級別並返回值的機制 - 在這種情況下,用於在網頁中顯示。(Curl 還具有不返回值的 do 塊)

第 5 行將包含標題資訊的行載入到表格中。

第 7 行定義了一個新變數 - my-table,型別為 Table,併為其分配一個初始值,該行的 {Table} 部分建立了 Table 的一個新例項。Curl 支援 any 型別,但使用起來速度較慢,因為系統必須對型別進行執行時檢查。

第 9 行建立一個 for 迭代器,其中包含一個區域性作用域變數 i,型別為整數。第 10 行定義了一個區域性變數 square,第 11 行對 cube 進行了相同的操作。

第 12 行使用 i、square 和 cube 的值將新行新增到表格中。

第 13 行結束 for 結構。

第 15 行包含 my-table 的名稱,因此 my-table 的值將用作值塊的結果。

第 16 行結束值塊。

華夏公益教科書