質問

CNIを使用してGCJを使用してJavaからC ++を呼び出そうとしています。これまでのところ、C ++からJavaコードを呼び出すことができます。 CNIを使用してJavaからC ++を呼び出すにはどうすればよいですか?

役に立ちましたか?

解決

私はPCENTの答えをいくらか拡張して読みます GCJ/CNIドキュメント.

重要なのは、「CNI C ++クラス」の概念全体を理解することだと思います。

  • CNI C ++クラスの作成はで説明されています そのページ.
  • CNI C ++クラスからJavaコードを呼び出すことができます(ヘッダーファイルを生成した場合) - それがすでに行っていることです(C ++のJavaを呼び出します)。
  • 重要なポイントはそれです CNI C ++メソッドはJavaから呼び出すことができます (これらのクラスには、Java互換性のあるものにするための一連の制限があるため)。また、CNIクラスは(特定の種類の)C ++クラスにすぎないため、C ++クラスをリンクするのと同じように、他のライブラリにリンクすることもできます。

ほとんど ドキュメンテーション JavaコンベンションがCNI C ++クラスでどのように翻訳されるかについて説明します。

他のヒント

読んでみてください GCJ/CNIドキュメント

私は優れたJavaプログラマーではありませんが、C#/C ++ Interopに慣れています。ネイティブC ++から管理されたC#に電話するのに最適なソリューション コールバック. 。これも当てはまると思います Jni

読んでみてください: http://www.tidytutorials.com/2009/07/java-native-interface-jni-example-using.html

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top