學習record相關知識

2021-06-11 04:39:59 字數 2078 閱讀 1641

概念:

當使用元組進行程式設計的時候,如果過於龐大的元素數量,將會很難記住。record提出來,是用於提供c語言裡面的一種類似structure的乙個有著固定數目字段的資料結構。

記錄定義:

-record( person,).

構造乙個record:

p1=#person.

例項**:

%%

%% author: erlang.hell

%% date: 2012-11-21

%%-module(t_record).

-export([autotest/0]).

-record(location,).

-record(person, } ).

autotest()->

p1=#person,

p2=#person,

showperson(p1),

showperson(p2),

n_p2=birthday(p2),

showperson(n_p2),

nn_p2=birthdayex(n_p2),

showpersonex(nn_p2),

n_p1=bournebirthday(p1),

showpersonex(n_p1).

showperson(p)->

io:format("name: ~p age: ~p phone: ~p\n", [p#person.name,p#person.age,p#person.phone]).

showpersonex(#person)->

io:format("show_ex name: ~p age: ~p phone: ~p x: ~p y: ~p\n", [name,age,phone,l#location.x,l#location.y]).

birthday(p)->

p#person.

birthdayex(#person=p)->

p#person.

%% just for jason bourne

bournebirthday( #person=p)->

p#person;

bournebirthday( p ) ->

p.

測試:

41> f().

ok42> c(t_record).

43> t_record:autotest().

name: "jason bourne" age: 19 phone: 119

name: "erlang hell" age: 0 phone: 110

name: "erlang hell" age: 1 phone: 110

show_ex name: "erlang hell" age: 2 phone: 110 x: 250 y: 250

show_ex name: "jason bourne" age: 20 phone: 119 x: 250 y: 250

ok

命令列record相關:

載入命令

rr(recordname).

刪除載入命令

rf(recordname).

注意的知識點:

1.      定義record;

2.      如何構造record;

3.      如何訪問到成員;

4.      如何巢狀資料結構;

5.      record的模式匹配;

本質上來說,record在記憶體中的表現是乙個元組[tuple],-record是乙個用於將元組,符號化解析出來。如果學過c語言的都知道,我們可以定乙個struct,然後將一塊記憶體強制轉換成為這個struct的指標;乙個意思。

oracle學習總結 record

記錄變數學習 基本語法 type 記錄型變數的名稱 is record 變數名 變數型別,變數名 變數型別。例項 建立乙個過程,用於引數出入員工編號,運用記錄型變數列印員工姓名和薪資 create or replace procedure pro2 v in empno in emp.empno t...

WinCE學習相關知識

知識一 activesync不能連線開發板的知識 1 剛開始正常連線,多次使用後出現不能連線的知識,清除wince登錄檔 2 不能連線的知識 pc是xp。知識二 wm timer優先順序與精度 1 wm timer訊息處理的優先順序比較低,同wm paint,一般來說,只有等訊息佇列沒有其他訊息時,...

機器學習相關知識

之前學習的東西很雜,都是想到哪個演算法,就去學。並沒有很系統的去理解他們的區別,這樣可能就沒辦法理解其真正的含義。再就是一心想著找實習,可是沒有足夠的水平水平很難去做這方面專案,即使找到了,可能也很low 所以其實我要做的是靜下心來,系統的,深入的去學習 理解和實現這些演算法 知識。常用的機器學習演...