2009-07-04 2 views

ответ

4

Используя Java Native Interface, вы можете передавать практически все, что угодно, между C++ и Java.

+0

а как насчет от java до C++? – Partial

+1

JNI Поддерживает оба направления. Это может быть сложно, и для вас могут быть лучшие решения, но немного почитать о JNI ответит на многие ваши вопросы и, как правило, полезно знать. – Duck

+3

JNA, по-видимому, является популярным чуть более высокоуровневым Java-интерфейсом на данный момент. –

1

Также проверьте CNI при использовании g ++. Не знаю, совпадает ли JNI, но вы просто используете C++ для записи в JVM. То есть вы не можете передавать чистые объекты C++ в Java. Вместо этого все должно происходить из объекта.

+0

Что вы подразумеваете под «get from from Object»? – Partial

2

Я предпочитаю Swig сам. Он обертывает JNI, позволяя вам звонить в любом направлении, которое вам нужно, многопоточность и т. Д. Он также работает с несколькими языками, включая Java, Python, Perl и т. Д.

Swig также переносится, так как ваш код на C++ - Я сам использую его в Linux и Windows, чтобы свести наш код на C++ к Java и Python.

Смежные вопросы