跳转至内容

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 行结束值块。

华夏公益教科书