CodeGear Rad Studio を使用しています。
C++Builder2007, Delphi2007 が使用できる環境ですが、
C++Builder2007でCPP ファイルから Pas ファイル中の
関数等は呼べるのはわかっているのですが、
Pas ファイル中の関数から CPP ファイル中の
関数を呼び出すことは不可能なのでしょうか?
できないと思います。
# DLLにして、呼び出すのはどうですか?
ありがとうございます。
やっぱり無理のようですね。
DLLも考えたのですが・・・
パスカルで処理を行いながら処理状況を表示するために
バーを表示しています。処理中に、処理の一部を
C++で記述されているCPPファイルの計算処理関数を呼び出せれば、
バー表示も簡単にできると思ったのですが。
DLLにするとこのバー表示のためになんらかの特別処理を
行わなければならないことになりますよね。
その方法はわかりませんけど。
そこで
1.Delphi2007に戻って、
C++のファイルをパスカルに移植する
2.そのままプロジェクトファイルだけCを使用して
C++のファイルをパスカルに移植する
3.プログラムの流れ的には以下のようにしたいので
メイン┬処理
│└←C++の関数をリンク
├入力処理
├設定処理
└登録処理
・メインはメニューのボタンを押したときにどれを処理するかだけの
簡単なコードなのでC++に移植
・処理は複雑な処理部分だけ別のPas関数に移動し
呼び出し部分をC++で作成し、
バーの表示と切り替え部分をC++で作成し
別にしたPasの処理関数とC++のファイルの処理関数の
両方を切り替えて呼び出す
というようにすれば簡単にできるのでしょうか?
よい方法があれば教えてください。
ネイティブコンパイラに多言語を要求するのは酷な話かと思います。
まぁできたら嬉しいんですがね。
DLL化はそんなに敷居の高い作業ではありません、
これを機に一度トライしてみたらどうでしょうか。
DLLで対応してみたいと思います。
ありがとうございました。
ツイート | ![]() |