ʹÓÃÏÖ´ú¹¤¾ßÓë¼¼Êõ
ÏÖ´úC++¿ª·¢ÖУ¬Ê¹ÓÃÏÖ´ú?¹¤¾ßºÍ¼¼ÊõÄܹ»Ìá¸ß¿ª·¢Ð§ÂʺʹúÂëÖÊÁ¿¡£
¾ßÌåÒªÁ죺ʹÓÃÏÖ´ú±àÒëÆ÷£¨ÈçGCC¡¢Clang¡¢MSVCµÈ£©£¬ÀûÓÃCMake½øÐÐÏîÄ¿¹¹½¨ºÍÖÎÀí¡£Ñ§Ï°Ê¹ÓÃÏÖ´úC++ÌØÐÔ£¨Èçconstexpr¡¢decltype¡¢autoµÈ£©¡£Á˽âºÍʹÓÃÏÖ´ú¿ª·¢¹¤¾ßºÍÇé¿ö£¬ÈçIDE£¨ÈçCLion¡¢VisualStudioµÈ?£©¡£
ÕâÒ»ÌØÐÔ¼«´óµØÌá¸ßÁËC++µÄ±í´ïÄÜÁ¦ºÍÁé»îÐÔ¡£
C++µÄ±ê×¼»¯ºÍÉú³¤£º´ÓC++98µ½?ÏÖ´úC++C++µÄÉú³¤Àú³ÌÖУ¬±ê×¼»¯ÊÇÒ»¸öÖØÒªµÄÀï³Ì±®¡£1990Ä꣬C++Ê״α»Õýʽ±ê×¼»¯£¬ÕâΪC++µÄ¹ã·ºÓ¦ÓõÓÚ¨ÁË»ù´¡¡£Ëæ×ÅÅÌËã»ú¼¼ÊõµÄ²»¾ø½ø²½£¬C++Ò²ÔÚ²»¾ø½ø»¯¡£1998Ä꣬C++98±ê×¼Ðû²¼£¬ÒýÈëÁËÄ£°å£¨Template£©ºÍ±ê×¼¿â£¨StandardTemplateLibrary,STL£©µÈÐÂÌØÐÔ£¬½øÒ»²½ÌáÉýÁËC++µÄ¹¦Ð§ºÍʹÓÃЧÂÊ¡£
½øÈë21ÊÀ¼Íºó£¬C++¼ÌÐø²»?¶ÏÉú³¤£¬2003ÄêµÄC++03±ê×¼ºÍ2011ÄêµÄC++11±ê×¼Ïà¼ÌÐû²¼¡£C++11ÒýÈëÁËlambda±í´ïʽ¡¢ÖÇÄÜÖ¸Õë¡¢rvalueÒýÓõÈÐÂÌØÐÔ£¬Ê¹µÃC++µÄ±à³Ì×÷·çÔ½·¢Ã÷´ú»¯¡¢¼ò½à¡£C++14½øÒ»²½ÍêÉÆÁËC++11µÄÌØÐÔ£¬ÒýÈëÁËautoÒªº¦×ÖºÍconstexprµÈÐÂÌØÐÔ¡£
´úÂëÖÊÁ¿Óë×î¼Ñʵ¼ù
ÔÚѧϰC++Àú³ÌÖУ¬¼á³Ö´úÂëÖÊÁ¿ºÍ×ñÑ×î¼Ñʵ¼ùºÜÊÇÖØÒª¡£Á¼ºÃµÄ±à³Ìϰ¹ßºÍ×î¼Ñʵ¼ùÄܹ»Ìá¸ß´úÂëµÄ?¿É¶ÁÐÔ¡¢¿Éά»¤ÐÔºÍÐÔÄÜ¡£
¾ßÌåÒªÁ죺×ñÑC++CoreGuidelines£¬Ñ§Ï°ºÍʹÓôúÂë×÷·çÖ¸ÄÏ£¨ÈçGoogleC++StyleGuide£©¡£¹Ø×¢´úÂëµÄ¿É¶ÁÐÔ£¬±Ü?ÃâÌ«¹ýÅÓ´óµÄÉè¼Æ¡£Ê¹Óþ²Ì¬ÆÊÎö¹¤¾ß£¨ÈçClang-Tidy¡¢PVS-Studio£©¼ì²é´úÂëÖÊÁ¿¡£
++µÄÄÚ´æÖÎÀí
C++µÄÄÚ´æÖÎÀí»úÖÆÊÇÆäµ×²ã²Ù×÷ÄÜÁ¦µÄÌåÏÖ¡£C++ÔÊÐí³ÌÐòÔ±Ö±½Ó²Ù×÷Äڴ棬ͨ¹ýÖ¸Õ루Pointers£©ºÍ¶¯Ì¬·ÖÅÉ£¨DynamicMemoryAllocation£©À´ÖÎÀíÄÚ´æ¡£ÕâÖÖÖ±½ÓµÄÄÚ´æÖÎÀíÄÜÁ¦£¬Ê¹µÃC++ÔÚ¸ßÐÔÄܺÍϵͳ¼¶±à³ÌÖÐÌåÏÖ¾«²Ê¡£
ÕâÒ²Òâζ×Å¿ª·¢ÕßÐèÒª½÷É÷´¦ÀíÄÚ´æÖÎÀí£¬ÒÔÖÆÖ¹³£¼ûµÄÄÚ´æÐ¹Â©ºÍ»á¼ûÔ½½çµÈÎÊÌâ¡£
ÑÐò½¥½øµÄѧϰҪÁì
C++ÓïÑÔÓµÓи»ºñµÄÌØÐÔºÍÅÓ´óµÄÓï·¨£¬Òò´ËÑÐò½¥½øµÄѧϰҪÁìºÜÊÇÖØÒª¡£¿ªÊ¼Ê±£¬ÖصãѧϰC++µÄ»ù´¡Óï·¨ºÍ½¹µã¿´·¨£¬È»ºóÖð²½ÉîÈëѧϰ¸ß¼¶ÌØÐÔ¡£
¾ßÌåÒªÁ죺Ê×ÏÈÕÆÎÕ»ù±¾Óï·¨£¨Èç±äÁ¿¡¢¿ØÖƽṹ¡¢º¯ÊýµÈ£©£¬È»ºóÑ§Ï°ÃæÏò¹¤¾ß±à³ÌµÄ»ù±¾¿´·¨£¨ÈçÀà¡¢¹¤¾ß¡¢¼ÌÐø¡¢¶à̬µÈ£©¡£ÉîÈëѧϰSTL£¨±ê׼ģ°å¿â£©ºÍÆäËû¸ß¼¶ÌØÐÔ£¨ÈçRAII¡¢Ä£°å±à³Ì¡¢ÖÇÄÜÖ¸ÕëµÈ£©¡£
У¶Ô£ºÐ»Ìï(p6mu9CWFoIx7YFddy4eQTuEboRc9VR7b9b)


