#ifdef __cplusplus extern "C" { #endif µÄ½âÊÍ
ÔÚ¿´´úÂëʱ¿´µ½ÈçϵĴúÂ룺
#ifdef __cplusplus
extern "C" {
#endif
ÃæÊÔʱ±»Îʵ½¹ý£¬²»ÉõÃ÷ÁË£¬ÍøÉϰٶÈһϣ¬ÕûºÏÁËÁ½¸öÈÊÐÖµÄÎÄÕ£¬ÈçÏ¡£:-)
ʱ³£ÔÚcppµÄ´úÂëÖ®Öп´µ½ÕâÑùµÄ´úÂë:
#ifdef __cplusplus
extern "C" {
#endif
//Ò»¶Î´úÂë
#ifdef __cplusplus
}
#endif
¡¡¡¡
ÕâÑùµÄ´úÂëµ½µ×ÊÇʲôÒâË¼ÄØ£¿Ê×ÏÈ£¬__cplusplusÊÇcppÖеÄ×Ô¶¨Òåºê£¬ÄÇô¶¨ÒåÁËÕâ¸öºêµÄ»°±íʾÕâÊÇÒ»¶ÎcppµÄ´úÂ룬Ҳ¾ÍÊÇ˵£¬ÉÏÃæµÄ´úÂëµÄº¬ÒåÊÇ:Èç¹ûÕâÊÇÒ»¶ÎcppµÄ´úÂ룬ÄÇô¼ÓÈëextern "C"{ºÍ}´¦ÀíÆäÖеĴúÂë¡£
¡¡¡¡ÒªÃ÷°×ΪºÎʹÓÃextern "C"£¬»¹µÃ´ÓcppÖжԺ¯ÊýµÄÖØÔØ´¦Àí¿ªÊ¼ËµÆð¡£ÔÚc++ÖУ¬ÎªÁËÖ§³ÖÖØÔØ»úÖÆ£¬ÔÚ±àÒëÉú³ÉµÄ»ã±àÂëÖУ¬Òª¶Ôº¯ÊýµÄÃû×Ö½øÐÐһЩ´¦Àí£¬¼ÓÈë±ÈÈ纯ÊýµÄ·µ»ØÀàÐ͵ȵÈ.¶øÔÚCÖУ¬Ö»ÊǼòµ¥µÄº¯ÊýÃû×Ö¶øÒÑ£¬²»»á¼ÓÈëÆäËûµÄÐÅÏ¢.Ò²¾ÍÊÇ˵:C++ºÍC¶Ô²úÉúµÄº¯ÊýÃû×ֵĴ¦ÀíÊDz»Ò»ÑùµÄ. Ä¿µÄ¾ÍÊÇÖ÷ҪʵÏÖCÓëC++µÄÏ໥µ÷ÓÃÎÊÌâ¡£
c.hµÄʵÏÖ
#ifndef _c_h_
#define _c_h_
#ifdef __cplusplus
extern "C" {
#endif
void C_fun();
#ifdef __cplusplus
}
#endif
#endif
-----------------------------------
c.cµÄʵÏÖ
££include "c.h"
void C_fun()
{
}
------------------------------------
ÔÚcpp.cppÖе÷ÓÃc.cÖеÄC_test()
cpp.cppµÄʵÏÖ
££include "c.h"
int main()
{
C_fun()
}
ÆäÖÐ__cplusplusÊÇC++±àÒëÆ÷µÄ±£Áôºê¶¨Ò壮¾ÍÊÇ˵C++±àÒëÆ÷ÈÏΪÕâ¸öºêÒѾ¶¨ÒåÁË£®
ËùÒԹؼüÊÇextern "C" {}
extern "C"ÊǸæËߣã«£«±àÒëÆ÷¼þÀ¨ºÅÀïµÄ¶«¶«Êǰ´ÕÕCµÄobjÎļþ¸ñʽ±àÒëµÄ£¬ÒªÁ¬½ÓµÄ»°°´ÕÕCµÄÃüÃû¹æÔòÈ¥ÕÒ£®
£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½
ÄÇôCÖÐÊÇÈçºÎµ÷ÓÃC++Öеĺ¯Êýcpp_fun()ÄØ£¿
ÒòΪÏÈÓÐCºóÓÐC++, ËùÒÔÖ»ÄÜ´ÓC++µÄ´úÂëÖп¼ÂÇÁË£®
¼ÓÈëC++Öеĺ¯Êý»ò±äÁ¿ÓпÉÄܱ»£ÃÖеÄÎļþµôÓã¬ÔòÓ¦¸ÃÕâÑùд£¬Ò²ÊÇÓÃextern "C"{}
²»¹ýÊÇ´úÂëÖÐÒª¼Ó£¬Í·ÎļþÒ²Òª¼Ó£¬ÒòΪ¿ÉÄÜÊÇC++ÖÐÒ²µ÷ÓÃ
--------------------------------------
cpp.hµÄʵÏÖ
#ifndef _c_h_
#define _c_h_
#ifdef __cplusplus
extern "C" {
#endif
void CPP_fun();
#ifdef __cplusplus
}
#endif
#endif
.-------------------------------------------
Cpp.cppµÄʵÏÖ
extern "C" { &nbs
Ïà¹ØÎĵµ£º
³õѧÕ߱ر¸:C ¾µäÈëÃÅÏêϸ½Ì³Ì
¹«ÔªÇ°216Äê8ÔÂ2ÈÕ£¬Òâ´óÀû¶«²¿Æ½Ô£¬Ò»¸ö½Ð×ö¿²ÄáµÄµØ·½£¬Á½Ö§´ó¾ü°Ú¿ªÕóÊÆ£¬×¼±¸¾öÒ»ËÀÕ½¡£Ò»·½ÊÇÓɱ£ÂÞ˹ºÍÍßÂÞÁ½Î»Ö´Õþ¹ÙÂÊÁìµÄÂÞÂíÈË£¬ÁíÒ»·½ÔòÊÇΰ´óµÄ¾üÊÂÌì²ÅººÄá°Î*°Í¿¨ÂÊÁìµÄåÈÌ«»ù¾ü¶Ó¼°ÆäͬÃË¡£ÂÞÂíÈ˳¬¹ý8Íò£¬¶øåÈÌ«»ù½öÓÐ4ÍòÓàÈË¡£È»¶øµ½Á˰øÍí£¬ÂÞÂíÈ˱»³¹µ×»÷°Ü£¬7ÍòÈ˱» ......
¼Ù¶¨¾¹ýÁËÈô¸ÉÄêµÄÑݽø£¬ IT¼¼Êõ·¢Õ¹µ½ÁËÕâÖ̶ֳȣº
1) ÁªÍø£º ËæÊ±ËæµØÓÐÎÞÏÞ´óµÄ´ø¿í£¬ Óû§¿ÉÒÔÍêÈ«Ãâ·ÑʹÓÃÍøÂ磬 ÒÔ¼°ÎÞÏßÍøÂç100%µÄ¸²¸ÇÂÊ£»
2£©PCÐÔÄÜ£ºÃ¿Ì¨µçÄÔ¶¼ÓÐ×ã¹»µÄÄڴ棬 ×ã¹»¿ìµÄCPU£» ÔÚÓÀ¾Ã´æ´¢ÁìÓò³öÏÖ¸ïÃüÐÔ¼¼Êõ£¬ ¼´·ÃÎÊÍⲿ´æ´¢Ê±¼äºÍ·ÃÎÊÄÚ´æÊ±¼äÔÚͬһÊýÁ¿¼¶£»
3£© B/S¿ª·¢¼¼Êõ£º ´óÁ¿³ÉÊìµÄwe ......
ÀûÓÃJNI¼¼Êõ£¬¿ÉÒÔ×öµ½C/C++ÓëJavaÖ®¼äµÄÏ໥µ÷Óá£
1¡¢Javaµ÷ÓÃC/C++½Ó¿Ú
Õâ¸öÊÇJNI×î»ù±¾µÄÓ¦Óã¬JNIÓкܶàÕâ·½ÃæµÄÀý×Ó´úÂë¡£Ò»°ã°ÑC/C++д³É¶¯Ì¬Á´½Ó¿â£»ÔÚJava³ÌÐòÔÚLoadLibrary£¬ÀûÓÃnative½Ó¿Ú£¬¼´¿ÉÍê³Éµ÷Óá£
2¡¢C/C++»Øµ÷Java½Ó¿Ú
ÕâÖÖÓ÷¨£¬JNIµÄÀý×ӱȽÏÉÙ¡£Æäʵ£¬Ò²±È½Ï¼òµ¥£¬JNIÒ²ÌṩÁËÕâÑùµÄ½Ó¿Ú¡ ......
1.ÒýÑÔ ±¾ÎĵÄд×÷Ä¿µÄ²¢²»ÔÚÓÚÌṩC/C++³ÌÐòÔ±ÇóÖ°ÃæÊÔÖ¸µ¼£¬¶øÖ¼ÔÚ´Ó¼¼ÊõÉÏ·ÖÎöÃæÊÔÌâµÄÄÚº¡£ÎÄÖеĴó¶àÊýÃæÊÔÌâÀ´×Ô¸÷´óÂÛ̳£¬²¿·ÖÊÔÌâ½â´ðÒ²²Î¿¼ÁËÍøÓѵÄÒâ¼û-¡£
Ðí¶àÃæÊÔÌâ¿´ËÆ¼òµ¥£¬È´ÐèÒªÉîºñµÄ»ù±¾¹¦²ÅÄܸø³öÍêÃÀµÄ½â´ð¡£ÆóÒµÒªÇóÃæÊÔÕßдһ¸ö×î¼òµ¥µÄstrcpyº¯Êý¶¼¿É¿´³öÃæÊÔÕßÔÚ¼¼ÊõÉϾ¿¾¹´ïµ½Á ......
Ò»¡¢ÐÞÊÎÃû£¨Decorated Name£©
C/C++³ÌÐòÖеĺ¯ÊýÔÚÄÚ²¿ÊÇͨ¹ýÐÞÊÎÃûÀ´±êʶµÄ¡£ÐÞÊÎÃûÊÇÔÚº¯Êý¶¨Òå»òÔÐͱàÒë½×¶ÎÓɱàÒëÆ÷´´½¨×Ö·û´®¡£µ±ÄãÔÚLINKµÈ¹¤¾ßÖÐÒªÖ¸¶¨Ò»¸öº¯ÊýÃûʱ£¬»áÓõ½ÐÞÊÎÃû¡£
1¡¢Ê¹ÓÃÐÞÊÎÃû£º
´ó¶àÊýÇé¿öÏ£¬Äã²»±ØÖªµÀº¯ÊýµÄÐÞÊÎÃûÊÇʲô¡£Á¬½ÓÆ÷µÈ¹¤¾ßͨ³£¶¼ÄÜ´¦Àíº¯ÊýδÐÞÊεÄÃû×Ö¡£È»¶ø£¬ÔÚÓÐЩÇé ......