レコードの渡し方

 

関数への受け渡しにレコードを渡す方法を示します。

 

Sample

 

BEGIN RECORD houseData

 DIM name$

 DIM postalNumber$

 DIM houseAddress$

 DIM telNo$

END RECORD

 

LOCAL FN printHouseData(hData AS ^houseData)

 PRINT hData.name$

END FN

 

DIM HyougoKen AS houseData

 

HyougoKen.name$ = “中嶋

 

FN printHouseData(HyougoKen)

 

 

FBの中では変数のポインタが渡されますが、上記赤字の部分のように記述すると、その関数中ではレコードとして扱えるようになります。

ポインタだけでなくレコードを持っているハンドル(リソースハンドルが代表例)にも下記に示す方法で、受け渡しが可能になります。

 

ポインタの場合

1.      変数名 AS ^ レコード名

2.      変数名 AS POINTER TO レコード名

参照方法は、変数名.メンバー名

 

ハンドルの場合

1. 変数名 AS ^^ レコード名

2. 変数名 AS HANDLE TO レコード名

参照方法は、変数名..メンバー名