主頁 > 知識庫 > Erlang中的模塊與模式匹配介紹

Erlang中的模塊與模式匹配介紹

熱門標簽:股票配資電銷機器人 電銷機器人 深圳 武漢AI電銷機器人 在電子版地圖標注要收費嗎 地圖標注如何弄全套標 南京電銷外呼系統(tǒng)哪家好 實體店地圖標注怎么標 外呼系統(tǒng)會封嗎 萬利達綜合醫(yī)院地圖標注點

模塊是Erlang的基本代碼單元,erl文件編譯后以.beam作為擴展名,采用UTF8字符集,.erl文件示意如下:
-module(模塊名,與存放模塊的文件名相同)
-export([方法名/輸入?yún)?shù)的個數(shù)])

復(fù)制代碼 代碼如下:

Method1( {a,b,c})->a*b*c;
Mehtod2({d,e})->d-e.

模塊屬性有兩種類型:預(yù)定義型和用戶定義型。
 
Erlang中用于代表函數(shù)的數(shù)據(jù)類型被稱為fun,相當于python中的lambda,一般用于
1)      對列表里的每個元素執(zhí)行相同的操作
2)      創(chuàng)建自己的控制
3)      實現(xiàn)可重入解析代碼,解析組合器或者lazy evaluator
 
模式匹配是Erlang的根基,case和if表達式使Erlang小而一致。
復(fù)制代碼 代碼如下:

case Expression  of
         Pattern1[ when Guard1] -> Expr-seq1;
         Pattern2[when Guard2]-> Expr-seq2;
         …
end
if
         Guard1-> Expr_seq1;
         Guard2-> Expr_seq2;
         …
end

Erlang有兩種方法來捕捉異常錯誤,一種是把拋出異常的調(diào)用函數(shù)封裝在一個try_catch 表達式里,提供了概括信息,另一種是把調(diào)用封裝在一個catch表達式里,提供了詳細的棧跟蹤信息。在捕捉到一個異常后,可以調(diào)erlang:get_stacktrace()來找到最近的棧信息。
 
把二進制型,位串,和位級模式匹配引入Erlang是為了簡化網(wǎng)絡(luò)編程。二進制型是置于雙小于號和雙大于號之間的一列整數(shù)或字符串。
例如: 1> Mybin1 =  “ILOVE YOU”>>
復(fù)制代碼 代碼如下:

Term_to_bingary(Term) ->Bin 轉(zhuǎn)換為二進制型
Binary_to_Term(Bin) ->Term 二進制型轉(zhuǎn)換為Erlang的數(shù)據(jù)類型

精心選擇宏的名稱和Erlang代碼布局,能最大限度地縮小C和Erlang的語義鴻溝。在Erlang里,最小的尋址單元是1位,位串里的位序列可直接訪問。

標簽:安徽 汕頭 臺州 濟寧 泰安 廣東 濟源 武威

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Erlang中的模塊與模式匹配介紹》,本文關(guān)鍵詞  Erlang,中的,模塊,與,模式,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Erlang中的模塊與模式匹配介紹》相關(guān)的同類信息!
  • 本頁收集關(guān)于Erlang中的模塊與模式匹配介紹的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章