Records
records和tuple同一掛的,沒什麼特別的。
records, tuple都是不能動態改變collection length的(不能新增或刪除item),而list, map可以,差別就在這。
通式如下:
宣告record definition,但是還沒實體化!
records有點像是ios plist,是可以存在一個.hrl file,這樣可以對不同的module都visible。
實體化的時候,如果跳過一個key沒給值的話,則erlang會給予一個definition中的default value。
實體化,語法上很怪,用#號表示instantiation:
第四行是指make a copy of X1 and update "status" field。
extraction:
或是用dot syntax:
總之是令人不習慣的語法,藍瘦香菇~~
pattern matching:
先貼上來,有用到再說。我發現我幾乎沒用過類似record的時候。
沒有留言:
張貼留言