![]() |
|
||||||||||||||
| | ÍøÕ¾Ê×Ò³ | Êý¾Ý¿â½Ì³Ì | web±à³Ì | ·þÎñÆ÷ | ³ÌÐòÉè¼Æ | | ||
|
||
|
||||||||||||||||||||||||
| C++±àÂë¹æ·¶ | ||||||||||||||||||||||||
×÷ÕߣºØýÃû ÎÄÕÂÀ´Ô´£º²»Ïê µã»÷Êý£º ¸üÐÂʱ¼ä£º2007-9-12 ![]() |
||||||||||||||||||||||||
|
C++±àÂë¹æ·¶ 1 ǰÑÔ ±¾±àÂë¹æ·¶Õë¶ÔC++ÓïÑÔ¡£
Ìá¸ß´úÂëµÄ½¡×³ÐÔ£¬Ê¹´úÂë¸ü°²È«¡¢¿É¿¿£» Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ£¬Ê¹´úÂëÒ×Óڲ鿴ºÍά»¤¡£ ±¾Îĵµ·Ö±ð¶ÔC++³ÌÐòµÄ¸ñʽ¡¢×¢ÊÍ¡¢±êʶ·ûÃüÃû¡¢Óï¾äʹÓᢺ¯Êý¡¢Àà¡¢³ÌÐò×éÖ¯¡¢¹«¹²±äÁ¿µÈ·½Ãæ×ö³öÁËÒªÇ󡣹淶·ÖΪÁ½¸ö¼¶±ð——¹æÔòºÍ½¨Òé¡£¹æÔò¼¶µÄ¹æ·¶ÒªÇ󿪷¢ÈËÔ±±ØÐëÒª×ñÊØ£¬½¨Òé¼¶µÄ¹æ·¶¿ª·¢ÈËÔ±Ó¦¾¡Á¿×ñÊØ¡£ ¸÷ÏîÄ¿×éÔÚÓÃC++ÓïÑÔ»ò»ùÓÚC++ÓïÑԵĿª·¢¹¤¾ß¿ª·¢ÏîĿʱ£¬Òª×ñÊØ±¾¹æ·¶¡£ 2 ±àÂë¹æ·¶ÕýÎÄ ÒÔÏÂÊǸ÷Ìõ¹æ·¶µÄ¾ßÌåÄÚÈÝ¡£ 2.1¸ñʽ ¶Ô´úÂëÊéд¸ñʽµÄÒªÇó¡£ 2.1.1 ¿ÕÐеÄʹÓà ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ¡ñÔÚÍ·ÎļþºÍʵÏÖÎļþÖУ¬¸÷Ö÷Òª²¿·ÖÖ®¼äÒªÓÿÕÐиô¿ª¡£ ËùνÎļþµÄÖ÷Òª²¿·Ö£¬°üÀ¨£ºÐòÑÔÐÔ×¢ÊÍ¡¢·ÀÖ¹±»Öظ´°üº¬²¿·Ö£¨Ö»ÔÚÍ·ÎļþÖУ©¡¢# include²¿·Ö¡¢#define²¿·Ö¡¢ÀàÐÍÉùÃ÷ºÍ¶¨Ò岿·Ö¡¢ÊµÏÖ²¿·ÖµÈµÈ¡£ ¡ñÔÚÒ»¸öº¯ÊýÖУ¬Íê³É²»Í¬¹¦ÄܵIJ¿·Ö£¬ÒªÓÿÕÐиô¿ª¡£ ÀíÓÉ£º ¶ÎÂä·ÖÃ÷£¬Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ 2.1.2 ÄÄÀïÓ¦¸ÃʹÓÿոñ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ¡ñÔÚʹÓø³ÖµÔËËã·û¡¢Âß¼ÔËËã·û¡¢Î»ÔËËã·û¡¢ËãÊõÔËËã·ûµÈ¶þÔª²Ù×÷·ûʱ£¬ÔÚÆäÁ½±ß¸÷¼ÓÒ»¸ö¿Õ¸ñ¡£ Àý£º nCount = 2£»¶ø²»ÊÇ nCount=2£» ¡ñ º¯ÊýµÄ¸÷²ÎÊý¼äÒªÓÓ£¬”ºÍÒ»¸ö¿Õ¸ñ¸ô¿ª¡£ Àý£ºvoid GetDate(int x, int y)£» ¶ø²»ÊÇvoid GetDate(int x,int y)»òvoid GetDate(int x ,int y)¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ 2.1.3 ÄÄÀï²»Ó¦¸ÃʹÓÿոñ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ¡ñ²»ÒªÔÚÒýÓòÙ×÷·ûǰºóʹÓÿոñ£¬ÒýÓòÙ×÷·ûÖ¸“£®”ºÍ“->”£¬ÒÔ¼°“[]”¡£ ¡ñ²»ÒªÔÚ“£º£º”ǰºóʹÓÿոñ¡£ ¡ñ²»ÒªÔÚÒ»Ôª²Ù×÷·ûºÍÆä²Ù×÷¶ÔÏóÖ®¼äʹÓÿոñ£¬Ò»Ôª²Ù×÷·û°üÀ¨“++”¡¢“--”“£¡”¡¢“&”“*”µÈ¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ ¾ÙÀý: // ²»ÒªÏóÏÂÃæÕâÑùд´úÂ룺 m_pFont -> CreateFont()£» //Ó¦¸Ãд³ÉÕâÑù m_pFont->CreateFont()£» 2.1.4 Ëõ½ø ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ¶Ô³ÌÐòÓï¾äÒª°´ÆäÂß¼½øÐÐˮƽËõ½ø£¬ÒÔÁ½¸ö¿Õ¸ñ»òÒ»¸öTab·ûΪµ¥Î»£¨½¨ÒéʹÓÿոñ£©£¬Ê¹Í¬Ò»Âß¼²ã´ÎÉϵĴúÂëÔÚÁÐÉÏ¶ÔÆë¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ 2.1.5 ³¤Óï¾äµÄÊéд¸ñʽ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ½Ï³¤µÄÓï¾äÒª·Ö³É¶àÐÐÊéд¡£³¤±í´ïʽҪÔÚµÍÓÅÏȼ¶²Ù×÷·û´¦·ÖÐÂÐУ¬²Ù×÷·û·ÅÔÚÐÂÐÐÖ®Ê×£¬»®·Ö³öµÄÐÂÐÐÒª½øÐÐÊʵ±µÄËõ½ø£¬Ëõ½ø³¤¶ÈÒÔÁ½¸ö¿Õ¸ñ»òTab·û³¤¶ÈΪµ¥Î»¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ ¾ÙÀý: // ÏÂÃæÊÇÒ»¸ö´¦ÀíµÄ½ÏΪºÏÀíµÄÀý×Ó nCount = Fun1(n1, n2, n3) + (nNumber1 * GetDate(n4, n5, n6)) * nNumber1; 2.1.6 ÇåÎú»®·Ö¿ØÖÆÓï¾äµÄÓï¾ä¿é ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö: ¿ØÖÆÓï¾ä(if , for , while , do...whule)µÄÓï¾ä²¿·ÖÒ»¶¨ÒªÓà ‘{ ’ºÍ‘ }’À¨ÆðÀ´(¼´Ê¹Ö»ÓÐÒ»ÌõÓï¾ä)£¬²¢ÇÒ‘{ ’ºÍ‘ }’Ó¦´¦ÔÚͬһÁÐÉÏ¡£ ÀíÓÉ£º ÕâÑù×ö£¬Äܹ»»®·Ö³öÇåÎúµÄÓï¾ä¿é£¬Ê¹Óï¾äµÄ¹éÊôÃ÷È·£¬Ê¹´úÂë¸ü¼ÓÈÝÒ×ÔĶÁºÍÐ޸ġ£ ¾ÙÀý: //²»ÒªÏóÏÂÃæÕâÑùд´úÂ룺 if (x == 0) return; else while (x > min) x--; // Ó¦¸ÃÕâÑùд if (x == 0) { return; } else { while (x > min) { x--; } } 2.1.7 Ò»ÐÐֻдһÌõÓï¾ä ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º Ò»ÐÐֻдһÌõ³ÌÐòÓï¾ä¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ ¾ÙÀý£º // ²»ÒªÕâÑùд x = x0; y = y0; while(IsOk(x)) {x++;} // Ó¦¸ÃÕâÑùд´úÂë x = x0; y = y0; while(IsOk(x)) { x++; } 2.1.8 Ò»´ÎÖ»ÉùÃ÷¡¢¶¨ÒåÒ»¸ö±äÁ¿ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º Ò»´Î£¨Ò»ÌõÉùÃ÷¡¢¶¨ÒåÓï¾ä£©Ö»ÉùÃ÷¡¢¶¨ÒåÒ»¸ö±äÁ¿¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ ¾ÙÀý£º // Ó¦¸ÃÕâÑùд int width; int length; // ²»ÒªÕâÑùд int width, length; 2.1.9 ÔÚ±í´ïʽÖÐʹÓÃÀ¨ºÅ ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ¶ÔÓÚÒ»¸ö±í´ïʽ£¬ÔÚÒ»¸ö¶þÔª¡¢ÈýÔª²Ù×÷·û²Ù×÷µÄ²Ù×÷ÊýµÄÁ½±ß£¬Ó¦¸Ã·ÅÖÓ£¨”ºÍ“£©”¡£ ÀíÓÉ£º ±ÜÃâ³öÏÖ²»Ã÷È·µÄÔËËã¡¢¸³ÖµË³Ðò£¬Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ ¾ÙÀý: // ÏÂÃæÕâÐдúÂ룺 result = fact / 100 * number + rem; //×îºÃд³ÉÕâÑù result = ((fact / 100) * number) + rem; 2.1.10½«²Ù×÷·û“*”¡¢“&”ºÍÀàÐÍдÔÚÒ»Æð ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ÔÚ¶¨ÒåÖ¸Õë¡¢ÒýÓñäÁ¿Ê±£¬½«²Ù×÷·û“*”¡¢“&”ºÍÀàÐÍдÔÚÒ»Æð¡£ ÀíÓÉ£º ͳһ¸ñʽ£¬Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ ¾ÙÀý: // ²»ÒªÏóÏÂÃæÕâÑùд´úÂ룺 char *s; //¶øÓ¦¸Ãд³ÉÕâÑù char* s; 2.2×¢ÊÍ ÕâÒ»²¿·Ö¶Ô³ÌÐò×¢ÊÍÌá³öÁËÒªÇó¡£ ³ÌÐòÖеÄ×¢ÊÍÊdzÌÐòÓëÈÕºóµÄ³ÌÐò¶ÁÕßÖ®¼äͨÐŵÄÖØÒªÊֶΡ£Á¼ºÃµÄ×¢ÊÍÄܹ»°ïÖú¶ÁÕßÀí½â³ÌÐò£¬ÎªºóÐø½×¶Î½øÐвâÊÔºÍά»¤ÌṩÃ÷È·µÄÖ¸µ¼¡£ ÏÂÃæÊǹØÓÚ×¢Ê͵Ļù±¾ÔÔò£º 1£® ×¢ÊÍÄÚÈÝÒªÇåÎúÃ÷ÁË£¬º¬Òå׼ȷ£¬·ÀÖ¹³öÏÖ¶þÒåÐÔ¡£ 2£® ±ßд´úÂë±ß×¢ÊÍ£¬Ð޸ĴúÂëµÄͬʱÐÞ¸ÄÏàÓ¦µÄ×¢ÊÍ£¬±£Ö¤´úÂëÓë×¢Ê͵ÄÒ»ÖÂÐÔ¡£ 2.2.1 ¶Ôº¯Êý½øÐÐ×¢ÊÍ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ¡ñÔÚº¯ÊýµÄÉùÃ÷֮ǰ£¬Òª¸ø³ö¾«Á·µÄ×¢ÊÍ£¨²»±ØÇ£³¶Ì«¶àµÄÄÚ²¿Ï¸½Ú£©£¬ÈÃʹÓÃÕßÄܹ»¿ìËÙ»ñµÃ×ã¹»µÄÐÅϢʹÓú¯Êý¡£¸ñʽ²»×ö¾ßÌåÒªÇó¡£ ¡ñÔÚº¯ÊýµÄ¶¨Òå֮ǰ£¬Òª¸ø³ö×ã¹»µÄ×¢ÊÍ¡£×¢Ê͸ñʽҪÇóÈçÏ£º /************************************************************************* ¡¾º¯ÊýÃû³Æ¡¿ £¨±ØÐ裩 ¡¾º¯Êý¹¦ÄÜ¡¿ £¨±ØÐ裩 ¡¾²ÎÊý¡¿ £¨±ØÐè¡£±êÃ÷¸÷²ÎÊýÊÇÊäÈë²ÎÊý»¹ÊÇÊä³ö²ÎÊý¡££© ¡¾·ÃÎʱäÁ¿¡¿ £¨±ØÐè¡£Áгö¸Ãº¯Êý·ÃÎʵÄÈ«¾Ö±äÁ¿¡¢³ÉÔ±±äÁ¿¡££© ¡¾·µ»ØÖµ¡¿ £¨±ØÐè¡£½âÊÍ·µ»ØÖµµÄÒâÒå¡££© ¡¾Ê¹ÓÃÇé¿ö¡¿ £¨±ØÐè¡£µ÷ÓÃÆäËüº¯ÊýµÄÇé¿ö£¬±»µ÷ÓõÄÇé¿ö£© ¡¾¿ª·¢Õß¼°ÈÕÆÚ¡¿ £¨±ØÐ裩 ¡¾°æ±¾¡¿ £¨±ØÐ裩 ¡¾¸ü¸Ä¼Ç¼¡¿ £¨ÈôÓÐÐ޸ģ¬Ôò±ØÐè×¢Ã÷£© *************************************************************************/ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ 2.2.2 ¶ÔÀà½øÐÐ×¢ÊÍ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ¡ñ ÔÚÀàµÄÉùÃ÷֮ǰ£¬Òª¸ø³ö×ã¹»¶ø¾«Á·µÄ×¢ÊÍ¡£×¢Ê͸ñʽҪÇóÈçÏ£º /************************************************************************* ¡¾ÀàÃû¡¿ £¨±ØÐ裩 ¡¾¹¦ÄÜ¡¿ £¨±ØÐ裩 ¡¾½Ó¿Ú˵Ã÷¡¿ £¨±ØÐ裩 ¡¾¿ª·¢Õß¼°ÈÕÆÚ¡¿ £¨±ØÐ裩 ¡¾°æ±¾¡¿ £¨±ØÐ裩 ¡¾°æÈ¨ÐÅÏ¢¡¿ £¨¿ÉÑ¡£© ¡¾¸ü¸Ä¼Ç¼¡¿ £¨ÈôÐ޸ĹýÔò±ØÐè×¢Ã÷£© *************************************************************************/ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ 2.2.3 ¶ÔÎļþ½øÐÐ×¢ÊÍ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ÔÚÍ·Îļþ¡¢ÊµÏÖÎļþµÄÊײ¿£¬Ò»¶¨ÒªÓÐÎļþ×¢ÊÍ£¬ÓÃÀ´½éÉÜÎļþÄÚÈÝ¡£×¢Ê͸ñʽҪÇóÈçÏ£º /************************************************************************* ¡¾ÎļþÃû¡¿ £¨±ØÐ裩 ¡¾¹¦ÄÜÄ£¿éºÍÄ¿µÄ¡¿ £¨±ØÐ裩 ¡¾¿ª·¢Õß¼°ÈÕÆÚ¡¿ £¨±ØÐ裩 ¡¾°æ±¾¡¿ £¨±ØÐ裩 ¡¾°æÈ¨ÐÅÏ¢¡¿ £¨±ØÐ裩 ¡¾¸ü¸Ä¼Ç¼¡¿ £¨ÈôÐ޸ĹýÔò±ØÐè×¢Ã÷£© *************************************************************************/ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ 2.2.4 ¶Ôÿ¸ö¿ÕÑ»·ÌåÒª¸ø³öÈ·ÈÏÐÔ×¢ÊÍ ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ½¨Òé¶Ôÿ¸ö¿ÕÑ»·Ì司³öÈ·ÈÏÐÔ×¢ÊÍ¡£ ÀíÓÉ£º Ìáʾ×Ô¼ººÍ±ðÈË£¬ÕâÊÇ¿ÕÑ»·Ì壬²¢²»ÊÇÍüÁË¡£ ¾ÙÀý£º while(g_bOpen == FALSE) { //¿ÕÑ»· } 2.2.5 ¶Ô¶à¸öcaseÓï¾ä¹²ÓÃÒ»¸ö³ö¿ÚµÄÇé¿ö¸ø³öÈ·ÈÏÐÔ×¢ÊÍ ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ½¨Òé¶Ô¶à¸öcaseÓï¾ä¹²ÓÃÒ»¸ö³ö¿ÚµÄÇé¿ö¸ø³öÈ·ÈÏÐÔ×¢ÊÍ¡£ ÀíÓÉ£º Ìáʾ×Ô¼ººÍ±ðÈË£¬Õ⼸¸öcaseÓï¾äȷʵÊǹ²ÓÃÒ»¸ö³ö¿Ú£¬²¢²»ÊÇÒÅ©ÁË¡£ ¾ÙÀý£º switch(nNumber) { case 1: nCount++; break; case 2: case 3: nCount--; break; //µ±nNumberµÈÓÚ2»ò3ʱ£¬½øÐÐͬÑùµÄ´¦Àí default: break; } 2.2.6 ÆäËüÓ¦¸Ã¿¼ÂǽøÐÐ×¢Ê͵ĵط½ ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ³ýÉÏÃæËµµ½µÄ£¬¶ÔÓÚÒÔÏÂÇé¿ö£¬Ò²Ó¦¸Ã¿¼ÂǽøÐÐ×¢ÊÍ£º l ±äÁ¿µÄÉùÃ÷¡¢¶¨Ò塣ͨ¹ý×¢ÊÍ£¬½âÊͱäÁ¿µÄÒâÒå¡¢´æÈ¡¹ØÏµµÈ£» ÀýÈ磺 int m_nNumber; //¼Ç¼ͼÐθöÊý¡£±»SetDate( )¡¢GetDate( )ʹÓᣠl Êý¾Ý½á¹¹µÄÉùÃ÷¡£Í¨¹ý×¢ÊÍ£¬½âÊÍÊý¾Ý½á¹¹µÄÒâÒå¡¢ÓÃ;µÈ£» ÀýÈ磺 //¶¨Òå½á¹¹Ì壬´æ´¢Ôª¼þµÄ¶Ëµã¡£ÓÃÓÚ½«Ð¾ɵĶ˵ã¶ÔÓ¦¡£ typedef struct { int nBNN; int nENN; int nBNO; int nENO; }Element; l·ÖÖ§¡£Í¨¹ý×¢ÊÍ£¬½âÊͲ»Í¬·ÖÖ§µÄÒâÒ壻 ÀýÈ磺 if(m_iShortRadio == 0) //ÈýÏàµÄÇé¿ö { strvC.Format("%-10.6f", vC); straC.Format("%-10.6f", aC); } else if(m_iShortRadio == 1) //Á½ÏàµÄÇé¿ö { strvC = _T(""); straC = _T(""); } lµ÷Óú¯Êý¡£Í¨¹ý×¢ÊÍ£¬½âÊ͵÷Óøú¯ÊýËùÒªÍê³ÉµÄ¹¦ÄÜ£» ÀýÈ磺 SetDate(m_nNumber ); //ÉèÖõ±Ç°µÄͼÐθöÊý¡£ l¸³Öµ¡£Í¨¹ý×¢ÊÍ£¬ËµÃ÷¸³ÖµµÄÒâÒ壻 ÀýÈ磺 m_bDraw = true; //½«µ±Ç°ÉèÖÃΪ»æÍ¼×´Ì¬ l³ÌÐò¿éµÄ½áÊø´¦¡£Í¨¹ý×¢ÊÍ£¬±êʶ³ÌÐò¿éµÄ½áÊø¡£ ÀýÈ磺 if (name = = White) { … if (age = = 20) { … }//ÄêÁäÅжϡ¢´¦Àí½áÊø … }//ÐÕÃûÅжϡ¢´¦Àí½áÊø lÆäËüÓбØÒª¼ÓÒÔ×¢Ê͵ĵط½£» ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ 2.2.7 ÐÐĩעÊ;¡Á¿¶ÔÆë ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ͬһ¸öº¯Êý»òÄ£¿éÖеÄÐÐĩעÊÍÓ¦¾¡Á¿¶ÔÆë¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ ¾ÙÀý: nCount = 0; //¼ÆÊýÆ÷£¬±íʾÕýÔÚ´¦ÀíµÚ¼¸¸öÊý¾Ý¿é BOOL bNeedSave; //ÊÇ·ñ±£´æ´Ó·þÎñÆ÷·µ»ØµÄÊý¾Ý BOOL bReturnCache; //ÊÇ·ñ½«CacheÖеÄÄÚÈÝ·µ»Ø¿Í»§¶Ë DWORD BytesWritten; //дÈëµÄÊý¾Ý³¤¶È 2.2.8 ×¢ÊÍÁ¿ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ×¢ÊÍÐеÄÊýÁ¿²»µÃÉÙÓÚ³ÌÐòÐÐÊýÁ¿µÄ1/3¡£ 2.3ÃüÃû ¶Ô±êʶ·ûºÍÎļþµÄÃüÃûÒªÇó¡£ 2.3.1 ±êʶ·ûÃüÃûÒªÇó ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ÔÚ³ÌÐòÖÐÉùÃ÷¡¢¶¨ÒåµÄ±äÁ¿¡¢³£Á¿¡¢ºê¡¢ÀàÐÍ¡¢º¯Êý£¬ÔÚ¶ÔÆäÃüÃûʱӦ¸Ã×ñÊØÍ³Ò»µÄÃüÃû¹æ·¶¡£¾ßÌåÒªÇóÈçÏ£º <! lÒ»°ã±äÁ¿ Ò»°ã±äÁ¿ÃûÓ¦ÒÔСд×Öĸ´òÍ·£¬¸÷Ó¢ÎÄÃèÊöµ¥´ÊµÄÊ××Öĸ·Ö±ð´óд£¬ÆäËû×ÖĸһÂÉСд¡£¶ÔÓÚ²»Í¬×÷ÓÃÓòµÄ±äÁ¿£¬ÆäÃüÃûÒªÇóÈçϱíËùʾ£º ±í2-1 ±äÁ¿ÃüÃû
ÉϱíÁгöÁ˶ԱäÁ¿ÃüÃûµÄ»ù±¾ÒªÇó¡£ÏîÄ¿×é»ò³ÌÐòÔ±¿ÉÔÚ¸ÃÒªÇóÉÏÔÙ½øÐÐϸ»¯£¬µ«±ØÐë±£Ö¤·ûºÏ¸ÃÒªÇó¡£ <! l³£Á¿ ³£Á¿µÄÃû×ÖҪȫ²¿´óд¡£³£Á¿Ö¸£º constÐÞÊεÄÁ¿¡£Èçconst int NUMBER = 100£» ö¾ÙÁ¿¡£Èçenum{ ONE£¬TWO£¬THREE }£» <! lºê ËùÓÐÓúêÐÎʽ¶¨ÒåµÄÃû×Ö£¬°üÀ¨ºê³£Á¿ºÍºêº¯Êý£¬Ãû×ÖҪȫ²¿´óд¡£ <! lÀàÐÍ ×Ô¶¨ÒåÀàÐÍÃûÓ¦ÒÔ´óд×Öĸ´òÍ·¡£C++ÖÐ×Ô¶¨ÒåÀàÐͰüÀ¨£ºclass¡¢struct¡¢enum¡¢union¡¢typedefÉùÃ÷µÄÀàÐÍ¡¢namespace¡£ ÀýÈ磺typedef struct Student£» class CMsgDialog; <! lº¯Êý º¯ÊýÃûÓ¦ÒÔ´óд×Öĸ´òÍ·¡£ ÀýÈ磺void GetCount()£» ÏÂÃæ»¹ÓÐһЩÔÚÃüÃûʱӦ¸Ã×ñÊØµÄ»ù±¾¹æ·¶£º <! lÃûÖꬶàÓÚÒ»¸öµ¥´Êʱ£¬Ã¿¸öµ¥´ÊµÄµÚÒ»¸ö×Öĸ´óд¡£ ÀýÈ磺m_LastCount ÖÐÒª´óдLºÍC£» <! l²»ÒªÊ¹ÓÃÒÔÏ»®Ïß“_”´òÍ·µÄ±êʶ·û¡£ ÀýÈ磺_bFind ÊDz»ÔÊÐí³öÏֵıäÁ¿£» <! l²»ÒªÊ¹ÓýöÓôóСд×ÖÄ¸Çø·ÖµÄÃû³Æ¡£ ÀýÈ磺m_bFind ºÍ M_BFIND£» <! l¾¡Á¿Ê¹ÓÃÓÐÒâÒåµÄÃû×Ö¡£Ó¦×öµ½¼ûÆäÃûÖªÆäÒâ¡£ ÀýÈ磺m_strError ±íʾ´íÎóµÄ×Ö·û´®£» ÀíÓÉ£º ¼õÉÙÃüÃû³åÍ»£»Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ 2.3.2 ±êʶ·û³¤¶ÈÒªÇó ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ÔÚ³ÌÐòÖÐÉùÃ÷¡¢¶¨ÒåµÄ±äÁ¿¡¢³£Á¿¡¢ºê¡¢ÀàÐÍ¡¢º¯Êý£¬ËüÃǵÄÃû×Ö³¤¶ÈÒªÔÚ4ÖÁ25¸ö×Ö·ûÖ®ÄÚ£¨ÏÂÏÞ²»°üÀ¨Ç°×º£¬ÉÏÏÞ°üÀ¨Ãû×ÖÖÐËùÓеÄ×Ö·û£©¡£ ¶ÔÓÚijЩÒѾ±»ÆÕ±éÈÏͬµÄ¼òµ¥ÃüÃû£¬¿É²»Êܱ¾¹æÔòµÄÏÞÖÆ¡£ÈçforÑ»·µÄÑ»·¼ÇÊý±äÁ¿£¬¿ÉʹÓà i ¡¢j µÈ¼òµ¥×Ö·ûÃüÃû¡£ ÀíÓÉ£º Ãû×Ö³¤¶ÈÓ¦¸ÃÔÚÒ»¸öÇ¡µ±µÄ·¶Î§ÄÚ£¬Ãû×ÖÌ«³¤²»¹»¼ò½à£¬Ãû×ÖÌ«¶ÌÓÖ²»ÄÜÇåÎú±í´ïº¬Òå¡£ 2.3.3 ÎļþÃüÃûÒªÇó ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ´úÂëÎļþµÄÃû×ÖÒªÓëÎļþÖÐÉùÃ÷¡¢¶¨ÒåµÄÀàµÄÃû×Ö»ù±¾±£³ÖÒ»Ö£¬Ê¹ÀàÃûÓëÀàÎļþÃû½¨Á¢ÁªÏµ¡£ ÀíÓÉ£º ʹӦÓóÌÐòÈÝÒ×Àí½â¡£ ¾ÙÀý: ½«ÀàCMsgDialogµÄÍ·ÎļþºÍʵÏÖÎļþÃüÃûΪmsgdialog.hºÍmsgdialog.cpp¾ÍÊÇÒ»ÖֱȽϼòµ¥¡¢Ç¡µ±µÄ·½·¨¡£ 2.4Óï¾ä ¶Ô¾ßÌå³ÌÐòÓï¾äµÄʹÓÃÒªÇó¡£ 2.4.1 Ò»Ìõ³ÌÐòÓï¾äÖÐÖ»°üº¬Ò»¸ö¸³Öµ²Ù×÷·û ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ÔÚÒ»Ìõ³ÌÐòÓï¾äÖУ¬Ö»Ó¦°üº¬Ò»¸ö¸³Öµ²Ù×÷·û¡£¸³Öµ²Ù×÷·û°üÀ¨£º=, +=, -=, *=, /=, %=, >>=, <<=, &=, |=,^=, ++, --¡£ ÀíÓÉ£º ±ÜÃâ²úÉú²»Ã÷È·µÄ¸³ÖµË³Ðò¡£ ¾ÙÀý: // ²»ÒªÕâÑùд b = c = 5; a = (b * c) + d++; // Ó¦¸ÃÕâÑùд c = 5; b = c; a = (b * c) + d; d++; 2.4.2 ²»ÒªÔÚ¿ØÖÆÓï¾äµÄÌõ¼þ±í´ïʽÖÐʹÓø³Öµ²Ù×÷·û ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ²»ÒªÔÚ¿ØÖÆÓï¾äif, while, for ºÍ switchµÄÌõ¼þ±í´ïʽÖÐʹÓø³Öµ²Ù×÷·û¡£¸³Öµ²Ù×÷·û°üÀ¨£º=, +=, -=, *=, /=, %=, >>=, <<=, &=, |=, ^=,++,--¡£ ÀíÓÉ£º Ò»¸öÀàËÆÓÚ if (x = y)ÕâÑùµÄд·¨ÊDz»Ã÷È·¡¢²»ÇåÎúµÄ£¬´úÂëµÄ×÷ÕßÒ²ÐíÊÇÏëд³ÉÕâÑù£º if (x == y)¡£ ¾ÙÀý: //²»ÒªÏóÏÂÃæÕâÑùд´úÂ룺 if (x -= dx) { ... } //Ó¦¸ÃÕâÑùд£º x -= dx; if (x) { ... } 2.4.3 ¸³Öµ±í´ïʽÖеĹ涨 ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ÔÚÒ»¸ö¸³Öµ±í´ïʽÖУº • Ò»¸ö×óÖµ£¬ÔÚ±í´ïʽÖÐÓ¦¸Ã½ö±»¸³ÖµÒ»´Î¡£ • ¶ÔÓÚ¶àÖØ¸³Öµ±í´ïʽ£¬Ò»¸ö×óÖµÔÚ±í´ïʽÖнöÓ¦³öÏÖÒ»´Î£¬²»ÒªÖظ´³öÏÖ¡£ ÀíÓÉ£º ±ÜÃâ²úÉú²»Ã÷È·µÄ¸³ÖµË³Ðò¡£ ¾ÙÀý: //²»ÒªÏóÏÂÃæÕâÑùд´úÂ룺 i = t[i++];//Ò»¸ö×óÖµ£¬ÔÚ±í´ïʽÖÐÓ¦¸Ã½ö±»¸³ÖµÒ»´Î a = b = c + a; //¶ÔÓÚ¶àÖØ¸³Öµ±í´ïʽ£¬Ò»¸ö×óÖµÔÚ±í´ïʽÖнöÓ¦³öÏÖÒ»´Î£¬²»ÄÜÖØ¸´³öÏÖ¡£ i = t[i] = 15; //¶ÔÓÚ¶àÖØ¸³Öµ±í´ïʽ£¬Ò»¸ö×óÖµÔÚ±í´ïʽÖнöÓ¦³öÏÖÒ»´Î£¬²»ÄÜÖØ¸´³öÏÖ¡£ 2.4.4 ʹÓÃÕý¹æ¸ñʽµÄ²¼¶û±í´ïʽ ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ¶ÔÓÚif, while, forµÈ¿ØÖÆÓï¾äµÄÌõ¼þ±í´ïʽ£¬½¨ÒéʹÓÃÕý¹æµÄ²¼¶û¸ñʽ¡£ ÀíÓÉ£º ʹ´úÂë¸üÈÝÒ×Àí½â¡£ ¾ÙÀý: //²»ÒªÏóÏÂÃæÕâÑùд´úÂ룺 while(1) { ... } if(test) { ... } for(i = 1; function_call(i); i++) { ... } //×îºÃÕâÑùд£º AlwaysTrue = true; while(AlwaysTrue == true) { ... } if(test == true) { ... } for(i = 1; function_call(i) == true; i++) { ... } 2.4.5 ½ûÓÃGotoÓï¾ä ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ³ÌÐòÖв»ÒªÊ¹ÓÃgotoÓï¾ä¡£ ÀíÓÉ£º ÕâÌõ¹æÔòµÄÄ¿µÄÊÇΪÁËÈ·±£³ÌÐòµÄ½á¹¹»¯£¬ÒòΪÀÄÓÃgotoÓï¾ä»áʹ³ÌÐòÁ÷³ÌÎÞ¹æÔò£¬¿É¶ÁÐԲ GotoÓï¾äÖ»ÔÚÒ»ÖÖÇé¿öÏÂÓÐʹÓüÛÖµ£¬¾ÍÊǵ±Òª´Ó¶àÖØÑ»·Éî´¦Ìø×ªµ½Ñ»·Ö®Íâʱ£¬Ð§Âʺܸߣ¬µ«¶ÔÓÚÒ»°ãÒªÇóµÄÈí¼þ£¬Ã»ÓбØÒª·Ñ¾¢ÐÄ˼׷Çó¶àô¸ßµÄЧÂÊ£¬¶øÇÒЧÂÊÖ÷ÒªÊÇÈ¡¾öÓÚËã·¨£¬¶ø²»ÔÚÓÚ¸ö±ðµÄÓï¾ä¼¼ÇÉ¡£ 2.4.6 ³ÌÐòÖнûÓÃbreak¡¢continue ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö: ÔÚ¿ØÖÆÓï¾ä (for, do, while) ¿éÖУ¬½ûֹʹÓÃBreakºÍcontinue¡£ ÔÚswitchÖеÄcaseÓï¾ä¿é²»ÊܸùæÔòÏÞÖÆ¡£ ÀíÓÉ£º ÔÚ¿ØÖÆÓï¾ä (for, do, while) ¿éÖÐʹÓÃBreakºÍcontinue£¬»á´òÂÒ´úÂë½á¹¹»¯µÄÁ÷³Ì£¬Ê¹´úÂëµÄ¿É¶ÁÐÔ½µµÍ¡£ 2.4.7 ×Ö·û´®µÄ¸³Öµ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö: ×Ö·û´®µÄ¸³ÖµÓ¦²ÉÓÃ_T(“”)ģʽ¡£ ÀíÓÉ£º ¸ÄÉÆ¿ÉÒÆÖ²ÐÔ¡£ ¾ÙÀý: //²»ÒªÏóÏÂÃæÕâÑùд´úÂ룺 Cstring strError = “syntax error”£» //Ó¦¸ÃÕâÑùд£º Cstring strError = _T(“syntax error”)£» 2.4.8 ±ÜÃâ¶Ô¸¡µãÊýÖµÀàÐÍ×ö¾«È·±È½Ï ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö: ²»Òª¶Ô¸¡µãÀàÐ͵ÄÊý¾Ý×öµÈÓÚ¡¢²»µÈÓÚÕâЩ¾«È·µÄ±È½ÏÅжϣ¬ÒªÓ÷¶Î§±È½Ï´úÌæ¾«È·±È½Ï¡£ ÀíÓÉ£º ÓÉÓÚ´æÔÚÉáÈëµÄÎÊÌ⣬¼ÆËã»úÄÚ²¿²»Äܾ«È·µÄ±íʾËùÓеÄÊ®½øÖƸ¡µãÊý£¬ÓõÈÓÚ¡¢²»µÈÓÚÕâÖÖ¾«È·µÄ±È½Ï·½·¨¾Í¿ÉÄܵóöÓëÔ¤ÆÚÏà·´µÄ½á¹û¡£ËùÒÔÓ¦¸ÃÓôóÓÚ¡¢Ð¡Óڵȷ¶Î§±È½ÏµÄ·½·¨´úÌæ¾«È·±È½ÏµÄ·½·¨¡£ ¾ÙÀý: //²»ÒªÏóÏÂÃæÕâÑùд´úÂ룺 float number; … … if (number = = 0) //¾«È·±È½Ï … … 2.4.9 new ºÍ delete ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö: ¾Ö²¿µÄnew ºÍ delete Òª³É¶Ô³öÏÖ£» newÒªÓëdelete¶ÔÓ¦£¬new[]ÒªÓëdelete[]¶ÔÓ¦¡£ ÀíÓÉ£º ·ÀÖ¹ÄÚ´æÐ¹Â¶¡£ 2.4.10¶ÔswitchÓï¾äÖÐÿ¸ö·ÖÖ§½áβµÄÒªÇó ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º switchÓï¾äÖеÄÿһ¸öcase·ÖÖ§£¬¶¼ÒªÒÔbreak×÷Ϊ·ÖÖ§µÄ½á⣨¼¸¸öÁ¬ÐøµÄ¿ÕcaseÓï¾äÔÊÐí¹²ÓÃÒ»¸ö£©¡£ ÀíÓÉ£º ʹ´úÂë¸üÈÝÒ×Àí½â£»¼õÉÙ´úÂë·¢Éú´íÎóµÄ¿ÉÄÜÐÔ¡£ 2.4.11switchÓï¾äÖеÄdefault·ÖÖ§ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ÔÚswitchÓï¾ä¿éÖУ¬Ò»¶¨ÒªÓÐdefault·ÖÖ§À´´¦ÀíÆäËüÇé¿ö¡£ ÀíÓÉ£º ÓÃÀ´´¦ÀíswitchÓï¾äÖÐĬÈÏ¡¢ÌØÊâµÄÇé¿ö¡£ 2.4.12¶ÔÖ¸ÕëµÄ³õʼ»¯ ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ÔÚ¶¨ÒåÖ¸Õë±äÁ¿µÄͬʱ£¬¶ÔÆä½øÐгõʼ»¯¡£Èç¹û¶¨Òåʱ»¹²»ÄÜΪָÕë±äÁ¿¸³ÓèÓÐЧֵ£¬ÔòʹÆäÖ¸ÏòNULL¡£ ÀíÓÉ£º ¼õÉÙʹÓÃδ³õʼ»¯Ö¸Õë±äÁ¿µÄ¼¸ÂÊ¡£ ¾ÙÀý: // ²»ÒªÕâÑùд´úÂë int* y ; y = &x ; ... // Ó¦¸ÃÕâÑùд int* y = &x; ... 2.4.13ÊÍ·ÅÄÚ´æºóµÄÖ¸Õë±äÁ¿ ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º µ±Ö¸Õë±äÁ¿ËùÖ¸µÄÄÚ´æ±»Êͷźó£¬Ó¦¸Ã¸³ÓèÖ¸ÕëÒ»¸öºÏÀíµÄÖµ¡£³ý·Ç¸ÃÖ¸Õë±äÁ¿±¾Éí½«ÒªÏûʧÕâÖÖÇé¿öϲ»±Ø¸³Öµ£¬·ñÔòÓ¦¸³ÓèNULL¡£ ÀíÓÉ£º ±£Ö¤Ö¸Õë±äÁ¿ÔÚÆäÉúÃüÖÜÆÚµÄÈ«¹ý³Ì¶¼Ö¸ÏòÒ»¸öºÏÀíµÄÖµ¡£ 2.4.14Ö¸ÕëÖ¸ÏòµÄÊý¾Ý³ÉÔ±µÄ·ÃÎÊ·½Ê½ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ÔÚ´úÂëÖÐÓÃptr->fldµÄÐÎʽ´úÌæ(*ptr).fldµÄÐÎʽ¡£ 2.5º¯Êý ¶Ôº¯ÊýµÄÒªÇó¡£ 2.5.1 Ã÷È·º¯Êý¹¦ÄÜ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º º¯ÊýÌå´úÂ볤¶È²»µÃ³¬¹ý100ÐУ¨²»°üÀ¨×¢ÊÍ£©¡£ ÀíÓÉ£º Ã÷È·º¯Êý¹¦ÄÜ£¨Ò»¸öº¯Êý½öÍê³ÉÒ»¼þÊÂÇ飩£¬¾«È·£¨¶ø²»ÊǽüËÆ£©µØÊµÏÖº¯ÊýÉè¼Æ¡£ 2.5.2 ½«Öظ´Ê¹ÓõĴúÂë±àд³Éº¯Êý ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ½«Öظ´Ê¹Óõļòµ¥²Ù×÷±àд³Éº¯Êý¡£ ÀíÓÉ£º ¶ÔÓÚÖØ¸´Ê¹ÓõŦÄÜ£¬ËäÈ»ºÜ¼òµ¥£¬Ò²Ó¦ÒÔº¯ÊýµÄÐÎʽÀ´´¦Àí£¬ÕâÑù¿ÉÒÔ¼ò»¯´úÂ룬ʹ´úÂë¸üÒ×ÓÚά»¤¡£ 2.5.3¾¡Á¿±£³Öº¯ÊýÖ»ÓÐΨһ³ö¿Ú ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º Ó¦¸Ã¾¡Á¿±£Ö¤Ò»¸öº¯ÊýÖ»ÓÐÒ»¸ö³ö¿Ú¡£ ÀíÓÉ£º Ôö¼Óº¯ÊýµÄ¿É¿¿ÐÔ¡£ 2.5.4 º¯ÊýÉùÃ÷ºÍ¶¨ÒåµÄ¸ñʽҪÇó ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ÔÚÉùÃ÷ºÍ¶¨Ò庯Êýʱ£¬ÔÚº¯Êý²ÎÊýÁбíÖÐΪ¸÷²ÎÊýÖ¸¶¨ÀàÐͺÍÃû³Æ¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ£¬¸ÄÉÆ¿ÉÒÆÖ²ÐÔ¡£ ¾ÙÀý: // ²»ÒªÏóÏÂÃæÕâÑùд´úÂ룺 f(int, char*); //º¯ÊýÉùÃ÷ f(a, b) //º¯Êý¶¨Òå int a; char* b { ... } // Ó¦¸ÃÕâÑùд£º f(int a, char* b); f(int a, char* b) { ... } 2.5.5 Ϊº¯ÊýÖ¸¶¨·µ»ØÖµ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ҪΪÿһ¸öº¯ÊýÖ¸¶¨ËüµÄ·µ»ØÖµ¡£Èç¹ûº¯ÊýûÓзµ»ØÖµ£¬ÔòÒª¶¨Òå·µ»ØÀàÐÍΪvoid¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ£»¸ÄÉÆ´úÂëµÄ¿ÉÒÆÖ²ÐÔ¡£ 2.5.6 ÔÚº¯Êýµ÷ÓÃÓï¾äÖв»ÒªÊ¹Óø³Öµ²Ù×÷·û ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º º¯Êýµ÷ÓÃÓï¾äÖУ¬ÔÚº¯ÊýµÄ²ÎÊýÁбíÖв»ÒªÊ¹Óø³Öµ²Ù×÷·û¡£¸³Öµ²Ù×÷·û°üÀ¨=, +=, -=, *=, /=, %=, >>=, <<=, &=, |=, ^=,++,--¡£ ÀíÓÉ£º ±ÜÃâ²úÉú²»Ã÷È·µÄ¸³ÖµË³Ðò¡£ ¾ÙÀý: // ²»ÒªÏóÏÂÃæÕâÑùд´úÂ룺 void fun1(int a); void fun2(int b) { fun1(++b); //×¢ÒâÕâÀï! } 2.5.7 ±£»¤¿ÉÖØÈ뺯ÊýÖеÄÈ«¾Ö±äÁ¿ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ±àд¿ÉÖØÈ뺯Êýʱ£¬Èô²Ù×÷È«¾Ö±äÁ¿£¬ÔòÓ¦¼ÓÒÔ±£»¤¡£ ¾ÙÀý: Èç¹ûÈ«¾Ö±äÁ¿²»¼ÓÒÔ±£»¤£¬µ±¶à¸öÏ̵߳÷Óô˺¯Êýʱ£¬ºÜ¿ÉÄÜʹ´Ë±äÁ¿±äΪ²»¿É֪״̬¡£ ÀýÈ磺¼ÙÉè ExamÊÇintÐÍÈ«¾Ö±äÁ¿£¬º¯ÊýSqure_Exam·µ»ØExamƽ·½Öµ£¬ÈçϺ¯Êý²»¾ßÓпÉÖØÈëÐÔ¡£ Unsigned int example (int para) { unsigned int temp; <!-- Exam = para; temp = Square_Exam(); return temp; } ´Ëº¯ÊýÈô±»¶à¸öÏ̵߳÷Ó㬠Exam ¿ÉÄܳÉΪδ֪µÄ¡£ ¿É¸ÄΪÈçÏ·½Ê½£º Unsigned int example (int para) { unsigned int temp; [ÉêÇëÐźÅÁ¿²Ù×÷] Exam = para; temp = Square_Exam(); [ÊÍ·ÅÐźÅÁ¿²Ù×÷] return temp; } 2.6Àà ¶ÔÀàµÄÒªÇó¡£ 2.6.1 ¹ØÓÚĬÈϹ¹Ô캯Êý ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö: Ϊÿһ¸öÀàÏÔʾ¶¨ÒåĬÈϹ¹Ô캯Êý¡£ ÀíÓÉ£º È·±£ÀàµÄ±àдÕß¿¼ÂÇÔÚÀà¶ÔÏó³õʼ»¯Ê±£¬¿ÉÄܳöÏֵĸ÷ÖÖÇé¿ö¡£ ¾ÙÀý: class CMyClass { CMyClass(); ... }; 2.6.2 ¹ØÓÚ¿½±´¹¹Ô캯Êý ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö: µ±ÀàÖаüº¬Ö¸ÕëÀàÐ͵ÄÊý¾Ý³ÉԱʱ£¬±ØÐëÏÔʾµÄ¶¨Ò忽±´¹¹Ô캯Êý¡£½¨ÒéΪÿ¸öÀà¶¼ÏÔʾ¶¨Ò忽±´¹¹Ô캯Êý¡£ ÀíÓÉ£º È·±£ÀàµÄ±àдÕß¿¼ÂÇÀà¶ÔÏóÔÚ±»¿½±´Ê±¿ÉÄܳöÏֵĸ÷ÖÖÇé¿ö¡£ ¾ÙÀý: class CMyClass { ... CMyClass(CMyClass& object); ... }; 2.6.3 ΪÀàÖØÔØ“=”²Ù×÷·û ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º µ±ÀàÖаüº¬Ö¸ÕëÀàÐ͵ÄÊý¾Ý³ÉԱʱ£¬±ØÐëÏÔÊ¾ÖØÔØ“=”²Ù×÷·û¡£½¨ÒéΪÿ¸öÀà¶¼ÏÔÊ¾ÖØÔØ“=”²Ù×÷·û¡£ ÀíÓÉ£º È·±£ÀàµÄ±àдÕß¿¼Âǽ«Ò»¸ö¸ÃÀà¶ÔÏó¸³Öµ¸øÁíÒ»¸ö¸ÃÀàµÄ¶ÔÏóʱ£¬¿ÉÄܳöÏֵĸ÷ÖÖÇé¿ö¡£ ¾ÙÀý: // Ó¦¸ÃÕâÑùд´úÂë class CMyClass { ... operator = (const CMyClass& object); ... }; 2.6.4 ¹ØÓÚÎö¹¹º¯Êý ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö: Ϊÿһ¸öÀàÏÔʾµÄ¶¨ÒåÎö¹¹º¯Êý¡£ ÀíÓÉ£º È·±£ÀàµÄ±àдÕß¿¼ÂÇÀà¶ÔÏóÔÚÎö¹¹Ê±£¬¿ÉÄܳöÏֵĸ÷ÖÖÇé¿ö¡£ ¾ÙÀý: class CMyClass { ... ~CMyClass (CMyClass& object); ... }; 2.6.5 ÐéÄâÎö¹¹º¯Êý ¸Ã¹æÔò²Î¿¼×Ô¡¶Effective C++¡·ÖеÄÌõ¿î 14¡£ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º »ùÀàµÄÎö¹¹º¯ÊýÒ»¶¨ÒªÎªÐéÄ⺯Êý£¨virtual Destructor£©¡£ ÀíÓÉ£º ±£Ö¤Àà¶ÔÏóÄÚ´æ±»ÊÍ·Å֮ǰ£¬»ùÀàºÍÅÉÉúÀàµÄÎö¹¹º¯Êý¶¼±»µ÷Óᣠ2.6.6 ²»ÒªÖØÐ¶¨Òå¼Ì³ÐÀ´µÄ·ÇÐ麯Êý ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ÔÚÅÉÉúÀàÖв»Òª¶Ô»ùÀàÖеķÇÐ麯ÊýÖØÐ½øÐж¨Òå¡£Èç¹ûȷʵÐèÒªÔÚÅÉÉúÀàÖжԸú¯Êý½øÐв»Í¬µÄ¶¨Ò壬ÄÇôӦ¸ÃÔÚ»ùÀàÖн«¸Ãº¯ÊýÉùÃ÷ΪÐ麯Êý£» ÀíÓÉ£º ²»ÒªÍüÁË£¬µ±Í¨¹ýÒ»¸öÖ¸Ïò¶ÔÏóµÄÖ¸Õëµ÷ÓóÉÔ±º¯Êýʱ£¬×îÖÕµ÷ÓÃÄĸöº¯ÊýÈ¡¾öÓÚÖ¸Õë±¾ÉíµÄÀàÐÍ£¬¶ø²»ÊÇÖ¸Õ뵱ǰËùÖ¸ÏòµÄ¶ÔÏó¡£ 2.6.7 ÓÃÄÚÁªº¯Êý´úÌæºêº¯Êý ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ÓÃÄÚÁªº¯Êý´úÌæºêº¯Êý¡£ ÀíÓÉ£º ͬºêº¯ÊýÏà±È£¬ÄÚÁªº¯Êý²»µ«¾ßÓк꺯ÊýµÄЧÂÊ£¬¶øÇÒʹÓÃÆðÀ´¸ü°²È«¡£ 2.6.8 Èç¹ûÖØÔØÁ˲Ù×÷·û"new"£¬Ò²Ó¦¸ÃÖØÔØ²Ù×÷·û "delete" ¸Ã¹æÔò²Î¿¼×Ô¡¶Effective C++¡·ÖеÄÌõ¿î10¡£ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º Èç¹ûÄãΪһ¸öÀàÖØÔØÁ˲Ù×÷·ûnew£¬ÄÇÄãÒ²Ó¦¸ÃΪÕâ¸öÀàÖØÔØ²Ù×÷·ûdelete¡£ ÀíÓÉ£º ²Ù×÷·ûnewºÍ²Ù×÷·ûdeleteÐèÒªÒ»ÆðºÏ×÷¡£ 2.6.9 ÀàÊý¾Ý³ÉÔ±µÄ·ÃÎÊ¿ØÖÆ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º Àà¶ÔÍâµÄ½Ó¿ÚÓ¦¸ÃÊÇÍêÈ«¹¦ÄÜ»¯µÄ£¬ÀàÖпÉÒÔ¶¨ÒåPublicµÄ³ÉÔ±º¯Êý£¬µ«²»Ó¦¸ÃÓÐPublicµÄÊý¾Ý³ÉÔ±¡£ ÀíÓÉ£º ÒªÏë¸Ä±ä¶ÔÏóµÄµ±Ç°×´Ì¬£¬Ó¦¸Ãͨ¹ýËüµÄ³ÉÔ±º¯ÊýÀ´ÊµÏÖ£¬¶ø²»Ó¦¸Ãͨ¹ýÖ±½ÓÉèÖÃËüµÄÊý¾Ý³ÉÔ±ÕâÖÖ·½·¨¡£Ò»¸öÀàµÄÊý¾Ý³ÉÔ±Ó¦¸ÃÉùÃ÷ΪprivateµÄ£¬×îÆðÂëÒ²Ó¦¸ÃÊÇprotectedµÄ¡£ 2.6.10ÏÞÖÆÀà¼Ì³ÐµÄ²ãÊý ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º µ±¼Ì³ÐµÄ²ãÊý³¬¹ý5²ãʱ£¬ÎÊÌâ¾ÍºÜÑÏÖØÁË£¬ÐèÒªÓÐÌØ±ðµÄÀíÓɺͽâÊÍ¡£ ÀíÓÉ£º ¡ñºÜÉîµÄ¼Ì³Ðͨ³£Òâζ×Åδ×öͨÅ̵Ŀ¼ÂÇ£» ¡ñ»áÏÔÖø½µµÍЧÂÊ£» ¡ñ¿ÉÒÔ³¢ÊÔÓÃÀàµÄ×éºÏ´úÌæ¹ý¶àµÄ¼Ì³Ð£» ¡ñÓë´ËÀàËÆ£¬Í¬²ãÀàµÄ¸öÊýÒ²²»ÄÜÌ«¶à£¬·ñÔòÓ¦¸Ã¿¼ÂÇÊÇ·ñÒªÔö¼ÓÒ»¸ö¸¸À࣬ÒÔ±ã×öijÖ̶ֳÈÉϵÄеijéÏ󣬴Ӷø¼õÉÙͬ²ãÀàµÄ¸öÊý¡£ 2.6.11É÷Óöà¼Ì³Ð ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º C++Ìṩ¶à¼Ì³ÐµÄ»úÖÆ¡£¶à¼Ì³ÐÔÚÃèÊöijЩÊÂÎïʱ¿ÉÄÜÊǷdz£ÓÐÀûµÄ£¬ÉõÖÁÊDZØÐëµÄ£¬µ«ÎÒÃÇÔÚʹÓöà¼Ì³ÐµÄʱ£¬Ò»¶¨ÒªÉ÷ÖØ£¬ÔÚ¾ö¶¨Ê¹Óöà¼Ì³Ðʱ£¬È·ÊµÒªÓзdz£³ä·ÖµÄÀíÓÉ¡£ ÀíÓÉ£º ¶à¼Ì³Ð»áÏÔÖøÔö¼Ó´úÂëµÄ¸´ÔÓÐÔ£¬»¹»á´øÀ´Ç±ÔڵĻìÏý¡£±ÈÈçÔںܶàC++Êé¼®ÖÐÌáµ½µÄÁâÐμ̳ÐÎÊÌ⣬ÈçÏÂͼËùʾ£º ![]() ͼ2-1 ÁâÐμ̳РAÅÉÉú×ÓÀàB¡¢C£¬D¶à¼Ì³ÐÓÚB¡¢C¡£ÕâÖÖÇé¿öÏ£¬»áµ¼ÖÂÀàDµÄ¶ÔÏóÖÐÓÐÁ½¸öÀàA×Ó¶ÔÏó¡£ 2.6.12¿¼ÂÇÀàµÄ¸´Óà ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ÀàÉè¼ÆµÄͬʱ£¬¿¼ÂÇÀàµÄ¿É¸´ÓÃÐÔ¡£ 2.7³ÌÐò×éÖ¯ ¶Ô³ÌÐò×éÖ¯µÄÒªÇó¡£ 2.7.1 Ò»¸öÍ·ÎļþÖÐÖ»ÉùÃ÷Ò»¸öÀà ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ÔÚÒ»¸öÍ·ÎļþÖУ¬Ö»Ó¦¸Ã°üº¬¶ÔÒ»¸öÀàµÄÉùÃ÷£¨Ç¶Ì×ÀàµÄÇé¿ö³ýÍ⣩¡£Í·ÎļþÊÇÖ¸ÒÔ.h¡¢.hh¡¢.H¡¢.hxx¡¢.hppΪºó׺µÄÎļþ¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ 2.7.2 Ò»¸öÔ´ÎļþÖÐֻʵÏÖÒ»¸öÀà ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö: ÔÚÒ»¸öÔ´ÎļþÖж¨ÒåµÄÿһ¸öº¯Êý£¬¶¼Ó¦¸ÃÊôÓÚͬһ¸öÀ࣬¼´¶ÔÒ»¸öÀàµÄʵÏÖÃèÊöÒª¶ÀÕ¼Ò»¸öÎļþ¡£Ô´ÎļþÖ¸ÒÔ*.cc, *.cxx, *.cpp, *.C or *.cΪºó׺µÄ´úÂëÎļþ¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ 2.7.3 Í·ÎļþÖÐÖ»°üº¬ÉùÃ÷£¬²»Ó¦°üº¬¶¨Òå ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ÔÚÍ·ÎļþÖÐÖ»°üº¬ÉùÃ÷£¬²»Òª°üº¬È«¾Ö±äÁ¿ºÍº¯ÊýµÄ¶¨Ò塣ͷÎļþÖ¸ÒÔ.h¡¢ .hh¡¢.H¡¢ .hxx¡¢.hppΪºó׺µÄ´úÂëÎļþ¡£ ÄÚÁªº¯ÊýµÄÇé¿ö³ýÍâ¡£ ÀíÓÉ£º ÔÚÍ·ÎļþÖÐÖ»Ó¦¸Ã°üº¬¸÷ÖÖÉùÃ÷£¬¶ø²»Ó¦¸Ã°üº¬¾ßÌåµÄʵÏÖ¡£ 2.7.4 Ô´ÎļþÖв»ÒªÓÐÀàµÄÉùÃ÷ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö: ÔÚÔ´ÎļþÖÐÖ»Ó¦¸Ã°üº¬¶ÔÀàµÄʵÏÖ£¬²»Ó¦¸Ã°üº¬ÈκÎÀàµÄÉùÃ÷¡£ÀàÉùÃ÷Ó¦¸Ãͳһ·Åµ½Í·ÎļþÖÐÈ¥¡£Ô´ÎļþÖ¸ÒÔ*.cc, *.cxx, *.cpp, *.C or *.cΪºó׺µÄ´úÂëÎļþ¡£ ÀíÓÉ£º Ìá¸ß´úÂëµÄ¿É¶ÁÐÔ¡£ 2.7.5 ¿É±»°üº¬µÄÎļþ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º Ö»ÔÊÐíÍ·Îļþ±»°üº¬µ½ÆäËüµÄ´úÂëÎļþÖÐÈ¥¡£ ÀíÓÉ£º ¸ÄÉÆ³ÌÐò´úÂëµÄ×éÖ¯½á¹¹¡£ 2.7.6 ±ÜÃâÍ·ÎļþµÄÖØ¸´°üº¬ ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º Í·ÎļþµÄ¸ñʽӦ¸ÃÀàËÆÓÚ£º #ifndef <IDENT> #define <IDENT> ... ... #endif »òÕß #if !defined (<IDENT>) #define <IDENT> ... ... #endif ÉÏÃæµÄ<IDENT>ÊÇÒ»¸ö±êʶ×Ö·û´®£¬ÒªÇó¸Ã±êʶ×Ö·û´®±ØÐëΨһ¡£½¨ÒéʹÓøÃÎļþµÄ´ðлÎļþÃû¡£ ÀíÓÉ£º ±ÜÃâ¶ÔͬһͷÎļþµÄÖØ¸´°üº¬¡£ ¾ÙÀý: // ¶ÔÓÚÎļþaudit.h£¬ËüµÄÎļþ½á¹¹Ó¦¸ÃΪ£º #ifndef AUDIT_H #define AUDIT_H ... ... #endif 2.8 ¹«¹²±äÁ¿ ¶Ô¹«¹²±äÁ¿£¨È«¾Ö±äÁ¿£©µÄÒªÇó¡£ 2.8.1 ÑϸñÏÞÖÆ¹«¹²±äÁ¿µÄʹÓà ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ÔÚ³ÌÐòÖÐÒª¾¡¿ÉÄÜÉÙµÄʹÓù«¹²±äÁ¿¡£ÔÚ¾ö¶¨Ê¹ÓÃÒ»¸ö¹«¹²±äÁ¿Ê±£¬Òª×Ðϸ¿¼ÂÇ£¬È¨ºâµÃʧ¡£ ÀíÓÉ£º ¹«¹²±äÁ¿»áÔö´óÄ£¿é¼äµÄñîºÏ¡£ 2.8.2 Ã÷È·¹«¹²±äÁ¿µÄ¶¨Òå ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º µ±ÄãÕæµÄ¾ö¶¨Ê¹Óù«¹²±äÁ¿Ê±£¬Òª×Ðϸ¶¨Òå²¢Ã÷È·¹«¹²±äÁ¿µÄº¬Òå¡¢×÷Óá¢È¡Öµ·¶Î§¡¢ÓëÆäËü±äÁ¿¼äµÄ¹ØÏµ¡£Ã÷È·¹«¹²±äÁ¿Óë²Ù×÷´Ë¹«¹²±äÁ¿µÄº¯ÊýÖ®¼äµÄ¹ØÏµ£¬Èç·ÃÎÊ¡¢Ð޸ĺʹ´½¨µÈ¡£ 2.8.3·ÀÖ¹¹«¹²±äÁ¿Óë¾Ö²¿±äÁ¿ÖØÃû ¹æ·¶¼¶±ð£º¹æÔò ¹æÔòÃèÊö£º ·ÀÖ¹¹«¹²±äÁ¿Óë¾Ö²¿±äÁ¿ÖØÃû¡£ 2.9 ÆäËü ÏÂÃæÕ⼸ÌõÒªÇ󣬲»ÊʺϺϲ¢µ½ÉÏÃæÈκÎÒ»À࣬ËùÒÔµ¥¶À×÷Ϊһ²¿·Ö¡£ 2.9.1 ²»ÒªÊ¹ÓýṹÌå ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòÃèÊö£º ÔÚC++ÖУ¬²»ÒªÔÙʹÓÃstruct¡£ ÀíÓÉ£º ÒÔ·ûºÏÃæÏò¶ÔÏóµÄ˼Ïë¡£ 2.9.2 ²»ÒªÊ¹ÓÃÁªºÏÌå ¹æ·¶¼¶±ð£º½¨Òé ¹æÔòà | ||||||||||||||||||||||||