REFER

REFER は、ベース構造体の属性であり、1 つのメンバーの値を使用して、同じ構造体の別のメンバーに割り当てられた記憶域スペースの量を決定することを指定します。形式は次のとおりです。

expressionREFER(variable)

この expression は評価され、固定小数点 2 進 (15) 数に変換されます。また、ベース構造体が割り当てられるときの初期エクステントになります。評価対象の式で作用対象として使用される変数は、REFER 属性を含むメンバーに属していてはなりません。

variable は、割り当てられる構造体に含まれており、それによってサイズが決まるエクステントよりも前に定義される変数でなければなりません。次に例を示します。

DECLARE 1 STRUC BASED(P),
      2 I FIXED BINARY,
      2 A CHARACTER(20 REFER(I));

構造体の宣言では複数の REFER 属性を使用できます。