ÔÚEclipseÖпª·¢C/C++ÏîÄ¿ תÌû
C/C++ development with the Eclipse Platform
Pawel Leszek
ÕªÒª:ͨ¹ý±¾ÎÄÄ㽫»ñµÃÈçºÎÔÚEclipseƽ̨ÉÏ¿ª·¢C/C++ÏîÄ¿µÄ×ÜÌåÈÏʶ¡£ËäÈ»EclipseÖ÷Òª±»ÓÃÀ´¿ª·¢JavaÏîÄ¿£¬µ«ËüµÄ¿ò¼ÜʹµÃËüºÜÈÝÒ×ʵÏÖ¶ÔÆäËû¿ª·¢ÓïÑÔµÄÖ§³Ö¡£ÔÚÕâÆªÎÄÕÂÀÄ㽫ѧ»áÈçºÎʹÓÃCDT(C/C++ Development Toolkit)£¬Ò»¸öÔÚEclipseƽ̨ÉÏ×îÊÊÓõÄC/C++¹¤¾ß°ü¡£
C/C++ÓïÑÔÊÇÊÀ½çÉÏ×îÁ÷ÐеijÌÐò¿ª·¢ÓïÑÔ£¬ËùÒÔEclipseÌṩ¶ÔC/C++ÓïÑÔµÄÖ§³ÖÒ²¾Í²»×ãÎªÆæÁË¡£ÓÉÓÚEclipseÖ»ÊÇΪ¿ª·¢¹¤¾ßÌṩһ¸ö¿ò¼Ü£¬ËùÒÔËü±ØÐë½èÖúÍⲿ²å¼þµÄÐÎʽʵÏÖ¶ÔC/C++ÓïÑԵļä½ÓÖ§³Ö¡£ÕâÆªÎÄÕ¸æËßÄãÈçºÎʹÓÃCDT£¬Ò»¸öÓÃÓÚEclipseƽ̨µÄC/C++¿ª·¢µÄ²å¼þ×é¡£CDTÏîÄ¿(¼û±¾ÎĺóÃæµÄResource²¿·Ö)µÄÄ¿±êÊÇΪEclipseƽ̨Ìṩһ¸öÍêÈ«ÒâÒåÉϵÄC/C++¼¯³É¿ª·¢»·¾³¡£ËäÈ»Õû¸öÏîĿרעÓÚLinuxƽ̨£¬µ«Êµ¼ÊÉÏ£¬ÔÚÄÇЩÌṩÁËGNU¿ª·¢¹¤¾ßµÄƽ̨ÉÏ£¬CDT¶¼¿ÉÒÔÔËÐеúܺ㬰üÀ¨Win32(Win 95/98/Me/NT/2000/XP)£¬QNX NeutrinoºÍSolarisƽ̨µÈ¡£
CDTÊÇÒ»¸ö¿ªÔ´ÏîÄ¿(»ùÓÚCPL)£¬´¿´âÓÉJavaÓïÑÔʵÏÖ¡£ÕâЩ²å¼þÔÚEclipse¹¤×÷ÇøÖÐÌí¼ÓÁËÒ»¸öC/C++¿ª·¢Êӽǣ¬°üÀ¨Ò»ÏµÁеÄÊÓͼ(Views)ºÍÏòµ¼(Wizards)£¬ÒÔ¼°Ò»Ð©¸ß¼¶µÄ±à¼ºÍµ÷ÊÔÖ§³ÖµÈ£¬ÒÔʵÏÖ¶ÔC/C++¿ª·¢µÄÈ«ÃæÖ§³Ö¡£
ÓÉÓÚÆä¸´ÔÓÐÔ£¬CDT±»·Ö¸îΪÈô¸É¸ö×é¼þ£¬Ã¿Ò»¸ö×é¼þ¶¼ÒÔÒ»¸ö¶ÀÁ¢²å¼þµÄÐÎʽ´æÔÚ¡£Ã¿¸ö×é¼þ¶¼ÊÇÒ»¸ö¶ÀÁ¢µÄÏîÄ¿£¬ÓÐ×Ô¼ºµÄÌá½»Õß¡¢³ô³æ·ÖÀàºÍÓʼþÁбíµÈ¡£µ«ÊÇ£¬Ã¿¸ö×é¼þ¶¼ÊÇCDTÕý³£ÔËÐв»¿É»òȱµÄ¡£ÏÂÃæÊÇÒ»¸öÍêÕûµÄCDT²å¼þÁбí:
l Primary CDT plug-in: ΪCDT²å¼þÌṩһ¸ö¿ò¼Ü£»
l CDT Feature Eclipse: CDTµÄÌØÐÔ×é¼þ£»
l CDT Core: ÌṩºËÐÄÄ£ÐÍ¡¢CDOMºÍºËÐÄ×é¼þ£»
l CDT UI: CDTµÄºËÐÄUI¡¢ÊÓͼ¡¢±à¼Æ÷¡¢Ïòµ¼£»
l CDT Launch: ΪÍⲿ¹¤¾ßÖîÈç±àÒëÆ÷ºÍµ÷ÊÔÆ÷ÌṩLaunch»úÖÆ£»
l CDT Debug Core: Ìṩµ÷ÊÔ¹¦ÄÜ£»
l CDT Debug UI: ΪCDTµ÷ÊÔ±à¼Æ÷¡¢ÊÓͼºÍÏòµ¼ÌṩÓû§½çÃæ£»
l &nbs
Ïà¹ØÎĵµ£º
ÁËCÈ»ºóC++£¬È»ºóMFC/Windows,È»ºóÊÇC#,ÆäÖÐÊý¾ÝÀàÐͺܶ࣬ÓÉ»ù±¾ÀàÐÍÑÜÉúµÄtypedefÀàÐÍÒ²N¶à¡£ÊìÖª»ù±¾Êý¾ÝÀàÐÍÊÇÎÒÃÇÕýÈ·±í´ïʵ¼ÊÎÊÌâÖи÷ÖÖÊý¾ÝµÄǰÌᣬÒò´ËÎÒ·ÖÀà×ܽáÁËÒ»ÏÂC/C++/Windows /C#»ù±¾Êý¾ÝÀàÐÍ£¬ÒÔ±ãÈÕºó²éÔÄ¡£
ANSI C/C++»ù±¾Êý¾ÝÀàÐÍ£º
Type
Size
Ê ......
ÄÚÈÝÕªÒª£º±¾ÎÄÏêϸϵͳµØ½éÉÜÁËuC/OS-IIÔÚ51µ¥Æ¬»úÉϵÄÒÆÖ²¡¢ÖØÈëʵÏÖ·½·¨¡¢Ó²¼þ·ÂÕæ¡¢¹Ì»¯¡¢ÈË»ú½çÃæµÈ¹Ø¼üÄÚÈÝ¡£
¹Ø¼ü´Ê£ºÇ¶Èëʽʵʱ¶àÈÎÎñ²Ù×÷ϵͳ¡¢uC/OS-II¡¢C51
ÒýÑÔ£º
Ëæ×Ÿ÷ÖÖÓ¦Óõç×ÓϵͳµÄ¸´ÔÓ»¯ºÍϵͳʵʱÐÔÐèÇóµÄÌá¸ß£¬²¢°éËæÓ¦ÓÃÈí¼þ³¯×Åϵͳ»¯·½Ïò·¢Õ¹µÄ¼ÓËÙ£¬ÔÚ16λ/32λµ¥Æ¬»úÖÐ¹ã·ºÊ¹Ó ......
1.ÒýÑÔ
¡¡¡¡C++ÓïÑԵĴ´½¨³õÖÔÊÇ“a better C”£¬µ«ÊÇÕâ²¢²»Òâζ×ÅC++ÖÐÀàËÆCÓïÑÔµÄÈ«¾Ö±äÁ¿ºÍº¯ÊýËù²ÉÓõıàÒëºÍÁ¬½Ó·½Ê½ÓëCÓïÑÔÍêÈ«Ïàͬ¡£×÷ΪһÖÖÓûÓëC¼æÈݵÄÓïÑÔ£¬C++±£ÁôÁËÒ»²¿·Ö¹ý³ÌʽÓïÑÔµÄÌØµã£¨±»ÊÀÈ˳ÆÎª“²»³¹µ×µØÃæÏò¶ÔÏ󔣩£¬Òò¶øËü¿ÉÒÔ¶¨Òå²»ÊôÓÚÈκÎÀàµÄÈ«¾Ö±äÁ¿ºÍº¯Êý¡£µ«ÊÇ£¬C++±Ï¾ ......
ʱ³£ÔÚcppµÄ´úÂëÖ®Öп´µ½ÕâÑùµÄ´úÂë:
#ifdef __cplusplus
extern "C" {
#endif
//Ò»¶Î´úÂë
#ifdef __cplusplus
}
#endif
ÕâÑùµÄ´úÂëµ½µ×ÊÇʲôÒâË¼ÄØ£¿Ê×ÏÈ£¬__cplusplusÊÇcppÖеÄ×Ô¶¨Òåºê£¬ÄÇô¶¨ÒåÁËÕâ¸öºêµÄ»°±íʾÕâÊÇÒ»¶ÎcppµÄ´úÂ룬Ҳ¾ÍÊÇ˵£¬ÉÏÃæµÄ´úÂëµÄº ......
1. ÄÚ´æ·ÖÅ䷽ʽ
(1) ´Ó¾²Ì¬´æ´¢ÇøÓò·ÖÅä¡£ÄÚ´æÔÚ³ÌÐò±àÒëµÄʱºò¾ÍÒѾ·ÖÅäºÃ£¬Õâ¿éÄÚ´æÔÚ³ÌÐòµÄÕû¸öÔËÐÐÆÚ¼ä¶¼´æÔÚ¡£ÀýÈ磺ȫ¾Ö±äÁ¿£¬static±äÁ¿¡£
(2) ÔÚÕ»ÉÏ´´½¨¡£ÔÚÖ´Ðк¯Êýʱ£¬º¯ÊýÄÚ¾Ö²¿±äÁ¿µÄ´æ´¢µ¥Ôª¶¼¿ÉÒÔÔÚÕ»ÉÏ´´½¨£¬º¯ÊýÖ´ÐнáÊøµÄʱºòÕâЩ´æ´¢µ¥Ôª×Ô¶¯±»ÊÍ·Å¡£Õ»ÄÚ´æ·ÖÅäÔËËãÄÚÖÃÓÚ´¦ÀíÆ÷µÄÖ¸ÁÖУ¬Ð§Âʺܸ ......