¸ßÖÊÁ¿C++/C±à³ÌÖ¸ÄÏ
http://man.lupaworld.com/content/develop/c&c++/c/c.htm
1. Èç¹û²ÎÊýÊÇÖ¸Õ룬ÇÒ½ö×÷ÊäÈëÓã¬ÔòÓ¦ÔÚÀàÐÍǰ¼Óconst£¬ÒÔ·ÀÖ¹¸ÃÖ¸ÕëÔÚº¯ÊýÌåÄÚ±»ÒâÍâÐÞ¸Ä
2. ÔÚº¯ÊýÌåµÄ“Èë¿Ú´¦”£¬¶Ô²ÎÊýµÄÓÐЧÐÔ½øÐмì²é
ÔÚº¯ÊýÌåµÄ“³ö¿Ú´¦”£¬¶ÔreturnÓï¾äµÄÕýÈ·ÐÔºÍЧÂʽøÐмì²é
3. ÒýÓõÄһЩ¹æÔòÈçÏ£º
£¨1£©ÒýÓñ»´´½¨µÄͬʱ±ØÐë±»³õʼ»¯£¨Ö¸ÕëÔò¿ÉÒÔÔÚÈκÎʱºò±»³õʼ»¯£©¡£
£¨2£©²»ÄÜÓÐNULLÒýÓã¬ÒýÓñØÐëÓëºÏ·¨µÄ´æ´¢µ¥Ôª¹ØÁª£¨Ö¸ÕëÔò¿ÉÒÔÊÇNULL£©¡£
£¨3£©Ò»µ©ÒýÓñ»³õʼ»¯£¬¾Í²»ÄܸıäÒýÓõĹØÏµ£¨Ö¸ÕëÔò¿ÉÒÔËæÊ±¸Ä±äËùÖ¸µÄ¶ÔÏ󣩡£
4. ÄÚ´æ·ÖÅ䷽ʽÓÐÈýÖÖ£º
£¨1)´Ó¾²Ì¬´æ´¢ÇøÓò·ÖÅä¡£ÄÚ´æÔÚ³ÌÐò±àÒëµÄʱºò¾ÍÒѾ·ÖÅäºÃ£¬Õâ¿éÄÚ´æÔÚ³ÌÐòµÄÕû¸öÔËÐÐÆÚ¼ä¶¼´æÔÚ¡£ÀýÈçÈ«¾Ö±äÁ¿£¬static±äÁ¿¡£
£¨2)ÔÚÕ»ÉÏ´´½¨¡£ÔÚÖ´Ðк¯Êýʱ£¬º¯ÊýÄÚ¾Ö²¿±äÁ¿µÄ´æ´¢µ¥Ôª¶¼¿ÉÒÔÔÚÕ»ÉÏ´´½¨£¬º¯ÊýÖ´ÐнáÊøÊ±ÕâЩ´æ´¢µ¥Ôª×Ô¶¯±»ÊÍ·Å¡£Õ»ÄÚ´æ·ÖÅäÔËËãÄÚ Öà ÓÚ´¦ÀíÆ÷µÄÖ¸ÁÖУ¬Ð§Âʺܸߣ¬µ«ÊÇ·ÖÅäµÄÄÚ´æÈÝÁ¿ÓÐÏÞ¡£
£¨3)´Ó¶ÑÉÏ·ÖÅ䣬Òà³Æ¶¯Ì¬ÄÚ´æ·ÖÅä¡£³ÌÐòÔÚÔËÐеÄʱºòÓÃmalloc»ònewÉêÇëÈÎÒâ¶àÉÙµÄÄڴ棬³ÌÐòÔ±×Ô¼º¸ºÔðÔÚºÎʱÓÃfree»òdeleteÊÍ·ÅÄÚ´æ¡£¶¯ ̬ÄÚ´æµÄÉú´æÆÚÓÉÎÒÃǾö¶¨£¬Ê¹Ó÷dz£Áé»î£¬µ«ÎÊÌâÒ²×î¶à¡£
5. ÖØÔØ ¸²¸Ç Òþ²Ø
³ÉÔ±º¯Êý±»ÖØÔصÄÌØÕ÷£º
£¨1£©ÏàͬµÄ·¶Î§£¨ÔÚͬһ¸öÀàÖУ©£»
£¨2£©º¯ÊýÃû×ÖÏàͬ£»
£¨3£©²ÎÊý²»Í¬£»
£¨4£©virtual¹Ø¼ü×Ö¿ÉÓпÉÎÞ¡£
¸²¸ÇÊÇÖ¸ÅÉÉúÀຯÊý¸²¸Ç»ùÀຯÊý£¬ÌØÕ÷ÊÇ£º
£¨1£©²»Í¬µÄ·¶Î§£¨·Ö±ðλÓÚÅÉÉúÀàÓë»ùÀࣩ£»
£¨2£©º¯ÊýÃû×ÖÏàͬ£»
£¨3£©²ÎÊýÏàͬ£»
£¨4£©»ùÀຯÊý±ØÐëÓÐvirtual¹Ø¼ü×Ö¡£
Èç¹ûÅÉÉúÀàµÄº¯ÊýÓë»ùÀàµÄº¯ÊýͬÃû£¬µ«ÊDzÎÊý²»Í¬¡£´Ëʱ£¬²»ÂÛÓÐÎÞvirtual¹Ø¼ü×Ö£¬»ùÀàµÄº¯Êý½«±»Òþ²Ø£¨×¢Òâ±ðÓëÖØÔØ»ìÏý£©
Èç¹ûÅÉÉúÀàµÄº¯ÊýÓë»ùÀàµÄº¯ÊýͬÃû£¬²¢ÇÒ²ÎÊýÒ²Ïàͬ£¬µ«ÊÇ»ùÀຯÊýûÓÐvirtual¹Ø¼ü×Ö¡£´Ëʱ£¬»ùÀàµÄº¯Êý±»Òþ²Ø£¨×¢Òâ±ðÓ븲¸Ç»ìÏý£©¡£
Ïà¹ØÎĵµ£º
1. ±äÁ¿²»×ö³õʼ»¯¡£
2. ·ÖÅäµÄ¶ÔÏó²»×öÏú»Ù¡£Ò»¸öºÃµÄϰ¹ß¾ÍÊÇ£¬Ã¿Éú³ÉÒ»¸öÀàʱ£¬¾Í×Ô¶¯Ð´Ò»¸ö×Ô¼ºµÄInitInstanceMember,ºÍ ReleaseInstanceMember()·½·¨¡£
3. °üµÄ·ÖÀ࣬Èç¹û×Ô¼º²»×ösourceµÄÂß¼·ÖÀ࣬C++»·¾³Ò»°ãÊDz»»á×Ô¼º×öµÄ¡£Õâ¸ö¸úJavaÖеÄpackageºÍÎļþÎïÀíÉÏ´æ´¢·½Ê½Ò»ÖÂÊDz»Ò»ÑùµÄ¡£
C++ ......
ÁËCÈ»ºóC++£¬È»ºóMFC/Windows,È»ºóÊÇC#,ÆäÖÐÊý¾ÝÀàÐͺܶ࣬ÓÉ»ù±¾ÀàÐÍÑÜÉúµÄtypedefÀàÐÍÒ²N¶à¡£ÊìÖª»ù±¾Êý¾ÝÀàÐÍÊÇÎÒÃÇÕýÈ·±í´ïʵ¼ÊÎÊÌâÖи÷ÖÖÊý¾ÝµÄǰÌᣬÒò´ËÎÒ·ÖÀà×ܽáÁËÒ»ÏÂC/C++/Windows /C#»ù±¾Êý¾ÝÀàÐÍ£¬ÒÔ±ãÈÕºó²éÔÄ¡£
ANSI C/C++»ù±¾Êý¾ÝÀàÐÍ£º
Type
Size
Ê ......
ʱ³£ÔÚcppµÄ´úÂëÖ®Öп´µ½ÕâÑùµÄ´úÂë:
#ifdef __cplusplus
extern "C" {
#endif
//Ò»¶Î´úÂë
#ifdef __cplusplus
}
#endif
ÕâÑùµÄ´úÂëµ½µ×ÊÇʲôÒâË¼ÄØ£¿Ê×ÏÈ£¬__cplusplusÊÇcppÖеÄ×Ô¶¨Òåºê£¬ÄÇô¶¨ÒåÁËÕâ¸öºêµÄ»°±íʾÕâÊÇÒ»¶ÎcppµÄ´úÂ룬Ҳ¾ÍÊÇ˵£¬ÉÏÃæµÄ´úÂëµÄº ......
±¾ÎĽéÉÜÔÚGNU/Linux»·¾³ÏÂÒ»¸öC³ÌÐòÓÉÔ´´úÂëµ½³ÌÐò£¬µ½¼ÓÔØÔËÐУ¬×îºóÖÕÖ¹µÄ¹ý³Ì¡£Í¬Ê±ÒԴ˹ý³ÌÎªÔØÌ壬½éÉÜGNU/Linuxƽ̨ÏÂÈí¼þ¿ª·¢¹¤¾ßµÄʹÓá£
±¾ÎÄÒÔÎÒÃÇ×î³£¼ûµÄhello, world!ΪÀý£º
#include <stdio.h>
main ()
{
printf(“hello, world!\n” ......