-1

私は、Fortran77プログラムのGUIを作成するタスクを与えられました。そのために、私はLaheyFujitsuコンパイラとwiskを使用しています。これは基本的にwinteracterのベアボーンバージョンです。今、私は90年にGUI部分をコーディングしています。正直なところ、今は何もコーディングしておらず、wiskウィザードが吐き出しているコードを使用しているだけで、77部分とのGUI部分の通信に問題があります。

プログラムは、メインプログラムと14個のサブルーチンファイルで構成されています。メインプログラムは、他のすべてのサブルーチンを呼び出し、計算を処理し、最終結果をテキストファイルに書き込みます。私がやりたいのは、メインプログラムをサブルーチンにして、プログラムのGUIまたはFortran 90部分から呼び出し、GUIをメインプログラムにすることです。fortran 77の多くが暗黙の倍精度として宣言されているのに対し、Fortran 90コードは暗黙的になしであるため、これを行うことは可能ですか?さらにGUIの部分では、すべてのサブルーチンを呼び出す必要がありますか、それともサブルーチンに含まれるメインプログラムがこれを処理しますか?

任意のヘルプ/アドバイスをいただければ幸いです。

私のFortranスキルはまだ限られているので、これのいずれかが明確でない場合は、確かにそうですが、私が何を意味するのかを明確にするように私に頼んでください。

ありがとう、クリスチャン

4

1 に答える 1

0

私は、大部分が Fortran 77 で書かれ、暗黙の実数などを多用するプログラムに取り組んでいるチームの一員です。しかし、後の段階で追加されたモジュール ファイルがあり、それらは Fortran で書かれています。 90、そして彼らは使用しますimplicit none。これらすべてが良い習慣と見なされるかどうかはわかりませんが、少なくとも機能し、これら 2 つの Fortran 方言の存在はこれまでのところ問題を引き起こしたことはありません (または、私が覚えていることはありません...)。したがって、90 と 77 の組み合わせが頭痛の種になるとは思えません。(参考までに、Intelコンパイラを使用しています)

私は今、明らかなことを見落としているかもしれませんが、一見したところ、現在のメインプログラムを GUI のサブルーチンに変え、「何をすべきかを伝える多くの引数でそれを呼び出す」というあなたの考えに何の問題もありません。 "。その道をたどる場合は、可能な限り古いコードをそのままにしておくのが最善です-古いメインプログラムにサブルーチン呼び出しなどを行わせます.

しかし、古いプログラム用のある種のラッパーを構築すること、つまり、そのままにしておき、別の GUI を作成し、その GUI に適切なパラメータでプログラムを呼び出させることはできないのでしょうか? 私は GUI プログラミングとラッパー作成の分野での経験があまりないので、どちらのアプローチが望ましいかはわかりませんが、これは変更を最小限に抑える必要があるルートのように思えます。場合によっては、スタンドアロンのコマンド ライン ツールとして使用することをお勧めします。

于 2011-01-10T19:40:24.550 に答える