データ項目がどのように割り振られ、初期化されるかは、 その項目が WORKING-STORAGE SECTION か LOCAL-STORAGE SECTION のどちらにあるかによって変化します。
プログラムの呼び出し時には、そのプログラムに関連付けられた WORKING-STORAGE が割り振られます。
VALUE 文節を持つすべてのデータ項目は、そのときに適切な値に初期化されます。その実行単位の存続期間中、WORKING-STORAGE 項目はそれぞれ最後に使われた状態を維持します。例外は次のとおりです。
この場合、WORKING-STORAGE データ項目は、プログラムに入るたびに再初期化されます。
この場合、WORKING-STORAGE データ項目は、CANCEL 後のプログラムへの最初の再入時に再初期化されます。
WORKING-STORAGE は、実行単位の終了時に割り振り解除されます。
COBOL のクラス定義における WORKING-STORAGE については、 関連するタスクを参照してください。
LOCAL-STORAGE データの別のコピーが プログラムまたはメソッドの個々の呼び出しに対して割り振られ、プログラムまたはメソッドから戻る時点で 解放されます。 LOCAL-STORAGE 項目で VALUE 文節を指定すると、 起動または呼び出しのたびに、項目はその値に初期化されます。VALUE 文節を指定しないと、項目の初期値は未定義になります。
関連タスク
メインプログラムまたはサブプログラムの終了と再入
マルチスレッド化のための COBOL プログラムの準備
クラス・インスタンス・データ定義用の WORKING-STORAGE SECTION
関連参照
Working-storage セクション
(「COBOL for Windows 言語解説書」)
Local-storage セクション
(「COBOL for Windows 言語解説書」)