1

テスト用にいくつかの関数をオーバーライドするために使用している C++ ライブラリがあります。ただし、コマンドラインからプロンプトを表示するように設定しただけです。

コマンドラインではなくプロンプトとして使用するためのGUIを作成しようとしています。

私は Tcl/Tk を調べてきましたが、私が望むことができるかどうかはよくわかりません。Tcl/Tk ラッパーを使用してライブラリ関数のスタイルを設定することはできますか?

C++ コードに Tcl/Tk を含めて、ライブラリ内でこれらの関数を呼び出すことはできますか?

4

2 に答える 2

1

これについて考慮すべき 2 つのメカニズムは、C++ モードのSWIGcritcl です。前者は C++ コードを既に持っているため、おそらく簡単に使用できます。後者は、より自然な (より「Tcl っぽい」) 言語の埋め込みを生成します。

ライブラリを接続したら、まず最初に、( tcltestTcl に付属の標準パッケージである を使用して) 小さなテスト スイートを作成し、動作を確認します。(これにより、後で心痛や髪を引き裂くことが大幅に軽減されます!) コードが正常に機能している場合は、おそらく 1 日か 2 日で十分なテスト スイートを作成できます。次に、それを GUI に接続します (Tk は確かにそのために適しています)。これは、正常に動作するビジネス ロジック レイヤーを使用しているという知識で安全に記述できます。可能であれば、C++ コードに GUI コードを含めないようにすることをお勧めします。もつれのないきれいなインターフェイスを作成する方がはるかに優れています。(OK、特に重いビジュアライゼーションを行っている場合は、常に回避できるとは限りませんが、より多くの作業が必要です...)

于 2012-07-12T08:04:20.013 に答える
1

おそらく最も簡単なのは、C++ 関数を swig でラップして Tcl から呼び出すこと です。このイントロを参照してください。その後、Tk を使用して、入力パラメーター用の GUI を作成したり、結果を表示したりできます。

于 2012-07-11T19:33:45.310 に答える