2010-06-08 10 views
7

से सी ++ कोड का आह्वान करना मैं सीएनआई का उपयोग कर जीसीजे का उपयोग कर जावा से सी ++ का आह्वान करने की कोशिश कर रहा हूं, अब तक मैं सी ++ से जावा कोड का आह्वान करने में सक्षम हूं। मैं सीएनआई का उपयोग कर जावा से सी ++ कैसे शुरू कर सकता हूं?जावा (जीसीजे)

उत्तर

4

मैं pcent के जवाब पर कुछ हद तक विस्तार GCJ/CNI Docs को पढ़ने के लिए की जाती है।

मेरा मानना ​​है कि कुंजी "सीएनआई सी ++ कक्षा" अवधारणा को समझना है।

  • सीएनआई सी ++ वर्ग का निर्माण that page में समझाया गया है।
  • आप जावा कोड को सीएनआई सी ++ कक्षा से कॉल कर सकते हैं (बशर्ते आपने हेडर फाइलें जेनरेट की हों) - यही वह है जो आप पहले से करते हैं (जावा को सी ++ से कॉल करना)।
  • मुख्य बिंदु यह है कि सीएनआई सी ++ विधियों को जावा से बुलाया जा सकता है (क्योंकि इन वर्गों में जावा-संगत बनाने के लिए उन पर प्रतिबंधों का एक सेट है)। और क्योंकि सीएनआई कक्षा केवल एक (विशेष प्रकार की) सी ++ कक्षा है, आप इसे अन्य पुस्तकालयों से भी लिंक कर सकते हैं जैसे कि आप किसी भी सी ++ वर्ग को लिंक करेंगे।

documentation में से अधिकांश वर्णन करता है कि जावा सम्मेलन सीएनआई सी ++ कक्षा में कैसे अनुवाद करते हैं।

-1

मैं एक अच्छा जावा प्रोग्रामर नहीं हूं, लेकिन मैं सी #/सी ++ इंटरऑप के साथ familar हूँ। देशी सी ++ से प्रबंधित सी # से कॉल करने के लिए मेरे लिए सबसे अच्छा समाधान कॉलबैक का उपयोग कर रहा था। मैं इस JNI

प्रयास करें पढ़ने के लिए भी लागू होता है लगता है: http://www.tidytutorials.com/2009/07/java-native-interface-jni-example-using.html

+2

प्रश्न JNI के बारे में नहीं था - यह सीएनआई, जो एक अलग जानवर पूरी तरह से है के बारे में था। –