0

私にはいくつかのアイデアがあります:

char* test = "testInteger(5).workOnReturn("doIt")[10]"

int ret = execute(test);

「extern」キーワードを使用するとどうなりますか?

C++ の実装とクラスがたくさんあるとします。「extern」を使用して C で同じものを定義し、ダミーの実装を提供して、実行時に実際の実装で C++ ライブラリにアクセスすることはできませんか?

4

2 に答える 2

0

おそらく、GCC コンパイラーをカスタマイズして (例えば、MELT拡張機能を使用して)、何らかの方法でライブラリーへの C インターフェースを生成することができます (おそらく、関連する C++ 関数に独自の#pragma-s で注釈を付けることにより ....) 。

しかし、あなたの質問は曖昧すぎて、より正確な答えを得ることができません。

C++ ライブラリとは何ですか? C++ でどのように使用する必要がありますか?

他の C++ ライブラリが C にどのように接続するかを見てくださいたとえば、 PPLのソース コードの中を見てください。

于 2013-03-10T08:54:10.070 に答える
0

C から C++ を使用したい場合は、C++ コードが明示的にビルドされている限り、非常に限られた方法でしか実行できません (つまり、基本的に C++ C++ を作成するためのほとんどを破棄することを意味します)。あなたの場合は起こりません。

C++ を使用するか、C 用のライブラリを入手することで解決できます。それ以外の方法は、意味をなさないほど害があります。

于 2013-03-10T15:19:55.900 に答える