Ò»¸öC++µ÷ÓÃCµÄÀý×Ó
//cExample.h
#ifndef C_EXAMPLE_H
#define C_EXAMPLE_H
#ifdef __cplusplus
extern "C"
{
#endif
int add(int x, int y);
#ifdef __cplusplus
}
#endif
#endif
---------------------------------
//cExample.c
#include"cExample.h"
int add(int x, int y)
{
return x + y;
}
---------------------------------
//cppFile.cpp
#include <iostream>
#include"cExample.h"
using namespace std;
main()
{
cout<<add(2,3)<<endl;
return 0;
}
--------------------------------
//makefile
cppFile: cppFile.o cExample.o
g++ -g -o cppFile cppFile.o cExample.o
cppFile.o: cppFile.cpp
g++ -g -c cppFile.cpp
cExample.o: cExample.c cExample.h
gcc -g -c cExample.c
clean:
rm -f *.o cppFile
Ïà¹ØÎĵµ£º
¸Ãmakefile Ö»ÊÇÔÚlinux ÖвâÊÔ¹ý£¬ Èô²ÉÓÃhu-ux Ö»ÒªÒÔÏÂmakefileÖеÄgcc ¸ÄΪaCC µ«
hu-ux δ²âÊÔ
1¡¢Ê×ÏÈÈ·¶¨pro*c ¹¤³ÌĿ¼½á¹¹
proc/bin
proc/include
proc/lib
proc/src
src/libsrc
src/project_src
&n ......
ÔÀ´ÊDZ»µ÷ÓõÄdllÓÖµ÷ÓÃÁËÆäËûµÄdll
µÚ¶þ¸ödllÍü¼ÇÁË¿¼µ½¹¤×÷Ŀ¼ÏÂ
µ¼ÖÂÁËc sharpһֱûÄܼÓÔØdll¡£±¨´í£ºÕÒ²»µ½dll
ÏÖÔÚÏëÆðÀ´£¬ËùνµÄdllÕÒ²»µ½£¬Ó¦¸ÃÊÇÕÒ²»µ½µÚ¶þ¸ödll
ÏûºÄʱ¼ä2¸öСʱ£¬ÐÄÇéÉÔ΢ÓеãÊÜÓ°Ïì ......
ÓÐ¹Ø extern "C"
¸ã¹ýCºÍC++»ì±àµÄͬ־ÃǶ¼ÖªµÀÕâ¸öɶÒâ˼¡£
Õâ¶ùÓн²£ºhttp://www.cppblog.com/Macaulish/archive/2008/06/17/53689.html
µ«¿´Ò»ÏÂÏÂÃæµÄÕâ¸ö´úÂ룺
#include <iostream>
using namespace
std;
extern "C" { int g_inta; }
int main (void)
{
g_ ......
1.·Ö²ãÉè¼Æ£¬¸ôÀëÆ½Ì¨Ïà¹ØµÄ´úÂë¡£¾ÍÏñ¿É²âÊÔÐÔÒ»Ñù£¬¿ÉÒÆÖ²ÐÔÒ²Òª´ÓÉè¼Æ×¥Æð¡£Ò»°ãÀ´Ëµ£¬×îÉϲãºÍ×îϲ㶼²»¾ßÓÐÁ¼ºÃµÄ¿ÉÒÆÖ²ÐÔ¡£×îÉϲãÊÇGUI£¬´ó¶àÊýGUI¶¼²»ÊÇ¿çÆ½Ì¨µÄ£¬ÈçWin32 SDKºÍMFC¡£×îϲãÊDzÙ×÷ϵͳAPI£¬´ó¶à²¿·Ö²Ù×÷ϵͳAPI¶¼ÊÇרÓõġ£
¡¡¡¡Èç¹ûÕâÁ½²ãµÄ´úÂëÉ¢²¼ÔÚÕû¸öÈí¼þÖУ¬ÄÇôÕâ¸öÈí¼þµÄ¿ÉÖ²ÐÔ½«·Ç³£µÄ² ......
´æ´¢Àà¾ÍÊÇÓÃÓÚ´æ´¢³ÌÐòÊý¾ÝµÄÄÚ´æµÄÀàÐÍ£¬ÓÉÈý¸öÊôÐÔÀ´±íʾ£º´æ´¢Ê±¼ä¡¢×÷ÓÃÓòºÍÁ´½Ó¡£
´æ´¢Ê±ÆÚÃèÊöµÄÊDZäÁ¿Õ¼ÓÃÄÚ´æµÄʱ¼ä£¬Óо²Ì¬µÄ¡¢×Ô¶¯µÄºÍ·ÖÅäµÄÈýÖÖ
×÷ÓÃÓòÊDZäÁ¿Æðµ½×÷Óõķ¶Î§£¬ÓдúÂë¿é×÷ÓÃÓòºÍÎļþ×÷ÓÃÓòÁ½ÖÖ
Á´½Ó˵Ã÷¸Ã±äÁ¿¿ÉÒÔ±»ÄÄЩµØ·½ÒýÓã¬ÓпÕÁ´½Ó¡¢ÄÚ²¿Á´½ÓºÍÍⲿÁ´½ÓÈýÖÖ
ÏÂÃæÊÇÎåÖÖ´æ´¢ÀàµÄÊôÐÔ ......