Erlangのメモテクニック
1650 ワード
1、and orとandalso orelseの違い
andとorは両方の式を計算しますが、andalssoとorelseの評価は短絡機構を採用しています.例えばexp 1 andalsso exp 2は、exp 1がfalseを返した後、exp 2を求めずにfalseを直接返します.exp 1 and exp 2はexp 1とexp 2を評価します.orはorelseと似ています.
2、Erlangでは「=<で表され、一般言語では「=文法」ではなく、同じように/番号で表されます.たとえば/=、=/=です.
3、Erlangの保留字は以下の通りです.
after and andalso band begin bnot bor bsl bsr bxor case catch cond div end fun if let not of or orelse query receive rem try when xor
基本的には論理演算、ビット演算、特殊な式に使用される記号です
4、モジュールの事前定義属性:
5、マクロ、定数または関数などを定義します.構文は次のとおりです.-define(Const,Replacement)-define(Func(Var1,...,VarN), Replacement).使用するときにマクロ名に疑問符を付けますか?例えば?Const,Replacementはマクロが現れる場所を挿入します.システムはいくつかのマクロを事前に定義しました: マクロ定義をキャンセル マクロMacroに定義がある場合、以下のコード を実行する. 同上、逆 はifdefまたはifndefに続く、前者の条件を満たさない場合に次のコード が実行されることを示す. if終端子 マクロ-define(Square(X)、X*X)を仮定する.平方を計算するのに使いますが、それでは??Xは、C言語のargのようなX式の文字列形式を返します.
andとorは両方の式を計算しますが、andalssoとorelseの評価は短絡機構を採用しています.例えばexp 1 andalsso exp 2は、exp 1がfalseを返した後、exp 2を求めずにfalseを直接返します.exp 1 and exp 2はexp 1とexp 2を評価します.orはorelseと似ています.
2、Erlangでは「=<で表され、一般言語では「=文法」ではなく、同じように/番号で表されます.たとえば/=、=/=です.
3、Erlangの保留字は以下の通りです.
after and andalso band begin bnot bor bsl bsr bxor case catch cond div end fun if let not of or orelse query receive rem try when xor
基本的には論理演算、ビット演算、特殊な式に使用される記号です
4、モジュールの事前定義属性:
-module(Module).
はモジュール名を宣言し、ファイル名と同じ-export(Functions).
が外部に導出した関数リスト-import(Module,Functions).
を指定して関数を導入しなければならない.導入した関数は、ローカル定義の関数として-compile(Options).
を使用して、export_all -vsn(Vsn).モジュールのバージョンです.これが設定されています.beam_lib:version/1
でこの情報を取得できます.-includeと-include_libはファイルを含みます.include-libは絶対パスでファイルを検索するのではなく、現在のErlangのlibディレクトリで検索します.5、マクロ、定数または関数などを定義します.構文は次のとおりです.-define(Const,Replacement)-define(Func(Var1,...,VarN), Replacement).使用するときにマクロ名に疑問符を付けますか?例えば?Const,Replacementはマクロが現れる場所を挿入します.システムはいくつかのマクロを事前に定義しました:
?MODULE
?MODULE_STRING ,
?FILEの現在のモジュールのファイル名?LINE呼び出しの現在のコード行数?MACHINEマシン名ErlangのマクロはC言語のマクロとよく似ています.同様にマクロインジケータがあります.-undef(Macro).
-ifdef(Macro).
-ifndef(Macro).
-else.
-endif.