+----------------------------------IBM 拡張----------------------------------+
目的
RECORD ステートメントは特殊な形式の型宣言ステートメントです。 他の型宣言ステートメントとは異なり、RECORD ステートメントで 宣言されたエンティティーの属性はこのステートメント自体には指定できません。
構文
.-,------------------------------------------. V | >>-RECORD----/ type_name /--+----+--record_obj_dcl_list-+------>< '-::-' record_obj_dcl: >>-record_object_name--+----------------+---------------------->< '-(-array_spec-)-' |
record_stmt:
.-,------------------------------------------. V | >>-RECORD----/ type_name /--+----+--record_obj_dcl_list-+------>< '-::-'
record_obj_dcl:
>>-record_object_name--+----------------+---------------------->< '-(-array_spec-)-'
type_name は有効範囲単位内でアクセス可能な派生型の名前でなければなりません。
規則
RECORD ステートメント内でエンティティーを初期化することはできません。
record_stmt は、その直前にある type_name によって 指定された派生型のエンティティーを宣言します。
RECORD キーワードを、IMPLICIT または FUNCTION ステートメントの type_spec として指定してはいけません。
+-------------------------Fortran 2003 ドラフト標準--------------------------+
BIND 属性を持つ派生型を RECORD ステートメントに指定してはいけません。
+----------------------End of Fortran 2003 ドラフト標準----------------------+
例
以下の例では、派生型変数を宣言するために、RECORD ステートメントが使用されています。
STRUCTURE /S/ INTEGER I END STRUCTURE STRUCTURE /DT/ INTEGER I END STRUCTURE RECORD/DT/REC1,REC2,/S/REC3,REC4
関連情報
+----------------------End of Fortran 2003 ドラフト標準----------------------+