首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

《Erlang程序设计》学习札记-第3章 顺序型编程

2012-11-05 
《Erlang程序设计》学习笔记-第3章 顺序型编程摘自:http://hi.baidu.com/zai215837829/blog/item/2f4fc2c770

《Erlang程序设计》学习笔记-第3章 顺序型编程
摘自:http://hi.baidu.com/zai215837829/blog/item/2f4fc2c770c882019d163d80.html

1. 自定义的for循环结构:

    max(X, Y) when X > Y -> X;    man(X, Y) -> Y.


7. 可以在任何允许使用表达式的地方使用断言,当断言用于表达式时,它要么返回原子true(认为是求值成功),要么返回原子false(求值失败)。


8. 断言序列:
    一组用逗号分隔的断言表达式表示的是and关系,即所以的断言为true,整个断言序列才为true。
    一组用分号分隔的断言表达式表示的是or关系

9. 断言谓词:
    is_atom(X)
    is_binary(X)
    is_constant(X)
    is_float(X)
    is_function(X)
    is_function(X, N)
    is_integer(X)
    is_list(X)
    is_number(X)
    is_pid(X)
    is_port(X)
    is_reference(X)
    is_tuple(X)
    is_record(X, Tag)
    is_record(X, Tag, N)

10. 断言BIF
    abs(X)                    X的绝对值
    element(N, X)        元组X的第N个元素
    float(X)                    将数字N转换为浮点数
    hd(X)                        列表X的头部
    length(X)                   列表X的长度
    node()                        当前节点
    node(X)                    进程X的节点
    round(X)                将数字X转换为整数(四舍五入)
    self()                    当前进程的标识符
    size(X)                    X的大小,X为元组或二进制数据
    trunc(X)                将数字X转换为整数(截取)
    tl(X)                        列表X的尾部

11. 尽量在一个列表的头部进行操作,尽量避免用到List++[H]这样的代码,除非List很短。通常要以自然顺序创建列表。规则如下:
    (1)总是在列表头部添加元素。
    (2)从一个输入列表的头部提取元素,然后把它们加在一个输出列表的头部。输出列表中的结果与输入列表的顺序相反。
    (3)如果顺序至关重要,那么调用经过高度优化的函数list:reverse/1。 (这个函数是在erlang虚拟机中实现的,经过了高度的优化)。
    (4)避免违反这些原则。

热点排行