• ベストアンサー

cobol サブルーチンのlink

cobol言語プログラミングでの質問です。 サブルーチンで 【ダイナミックLINK】と【スターティックLINK】というのがあるようですが、どのような違いがあるのでしょうか?今、私の認識は以下の通りなのですが正しいでしょうか??→例えば、ダイナミックはサブルーチンを修正し、コンパイル完了するとメインをコンパイルしなくてもサブルーチンの修正が反映される。スターテックはサブルーチンを修正し、コンパイル完了してもメインをコンパイル完了するまではサブルーチンの修正が反映されない。どうでしょうか????

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4901/10362)
回答No.1

ちょっと惜しいです。 スタティックリンクは、メインルーチンとサブルーチンが一体化されてリンクされて1つのモジュールになっています。サブルーチンを修正&コンパイルしたら、メインルーチンと再リンクが必要です。 ダイナミックリンクは、メインルーチンとサブルーチンが別々にリンクされそれぞれ独立したモジュールになっています。サブルーチンを修正&コンパイルしたら、サブルーチンの再リンクが必要ですが、メインルーチンを再リンクする必要はありません。 多くのメインルーチンで使われているサブルーチンを修正した場合、スタティックリンクだと多くのメインルーチンの再リンクが必要ですが、ダイナミックリンクだと不要です。

hoholo
質問者

お礼

早々の回答ありがとうございます!! 補足の解説頂きありがとうございます。 これで今度自分が質問されたら教えてあげるることが出来ます!! さっそく仕事に役立てます!!

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

ダイナミックリンクは、実行時にリンクされるもので、 例えば、DLLによる関数呼び出しの様なイメージです。 スタティックリンクは、コンパイル時にリンクされます。 コンパイルして1つのプログラムとして動作するので 質問文のイメージでだいたい合っていると思います。

関連するQ&A