ÈËÉú¾ÍÊDz«ÖйúÇø

C±àÄêÊ·£º²»Ö¹ÊÇ¡°17c.c¡±£¬¸üÊÇ´úÂëÌìϵÄÊ·Ê«
ȪԴ£ºÖ¤È¯Ê±±¨Íø×÷ÕߣºÀîÈðÓ¢2026-03-05 01:45:40
wwwzqhsauikdwjbfkjabfwqr

C++µÄÀèÃ÷£º´Ó¡°CwithClasses¡±µ½Ò»Î»ÏÈÇýµÄÔ¶¼û

ÔÚÖÚ¶àµÄÅÌËã»ú¿ÆÑ§ÐÇ¿ÕÖУ¬C++ÎÞÒÉÊÇÒ»¿Åè­è²ÐÑÄ¿µÄÃ÷ÐÇ¡£µ±ÄãÌáÆð¡°17c.c++¡±Ê±£¬»òÐí»áºÃÆæ£¬ÊÂʵÊÇË­£¬ÓÖÊÇÔÚÔõÑùµÄʱ´úÅä¾°Ï£¬²¥ÏÂÁËÕâÃÅǿʢÓïÑÔµÄÖÖ×Ó£¿¹ÊÊÂµÄÆðÔ´£¬Òª×·Ëݵ½ÉÏÊÀ¼ÍÆßÊ®ÄêÔÂÄ©£¬ÄÇʱµÄ?ÅÌËã»úÌìÏÂÕý´¦ÓÚÅÉú³¤µ«ÓÖÂÔÏÔÔÓÂÒµÄʱÆÚ¡£

²î±ðÓïÑÔ¸÷Ö´Ò»´Ê£¬Îª¿ª·¢Õß´øÀ´Á˲»ÉÙÀ§ÈÅ¡£

¹ÊʵÄÖ÷È˹«£¬Êǵ¤ÂóÅÌËã»ú¿ÆÑ§¼ÒBjarneStroustrup£¨²¼À³¶÷¡¤¿ËÄẺ£©£¬Ò»Î»ÔÚ±´¶ûʵÑéÊÒÊÂÇéµÄÏÈÇý¡£ËûÉîÖª£¬ÔÚ¿ª·¢´ó?ÐÍ¡¢ÖØ´óµÄϵͳʱ£¬¼ÈÐèÒªCÓïÑÔµÄЧÂÊºÍµ×²ã¿ØÖÆÄÜÁ¦£¬ÓÖÅÎÔ¸¸ü¸ß¼¶µÄÁýͳºÍÄ£¿é»¯¡£Æäʱ£¬SimulaÓïÑÔµÄÃæÏò¹¤¾ßÌØÕ÷¸øËûÁôÏÂÁËÉî¿ÌÓ¡Ï󣬵«ËûÓÖÒÔΪSimulaµÄЧÂʲ»?×ãÒÔÖª×ãϵͳ¼¶±à³Ì?µÄÐèÇó¡£

ÓÚÊÇ£¬Ò»¸ö´óµ¨µÄÏë·¨ÔÚËûÐÄÖÐÃÈÑ¿£ºÄÜ·ñ½«CÓïÑÔµÄǿʢ?ÓëÃæÏò¹¤¾ß±à³ÌµÄ±ãµ±ÐÔÍŽáÆðÀ´£¿

1979Ä꣬BjarneStroustrup×îÏÈÁËËûµÄ¡°CwithClasses¡±ÏîÄ¿£¬Õâ¼´ÊÇC++×îÔçµÄ³ûÐΡ£Ëû²¢·Ç´ÓÁã×îÏÈ£¬¶øÊÇÕ¾ÔÚ¾ÞÈ˵ļç°ò?ÉÏ¡ª¡ª¼ÌÐøÁËCÓïÑÔ¾«Á·¡¢¸ßЧµÄÒ²§£¬²¢ÇÉÃîµØÒýÈëÁËÀࣨclass£©µÄ¿´·¨£¬ÒÔ¼°ÓëÖ®Ïà¹ØµÄ·â×°¡¢¼ÌÐøºÍ¶à̬µÈÃæÏò¹¤¾ßµÄ½¹µãÌØÕ÷¡£

Õâ¾ÍÏñÊÇÔÚÒ»¼þÓÅÒìµÄ¹¤ÒµÆ·ÉÏ£¬¾«µñϸ×ÁµØ¼ÓÈëÁ˸ü¶àÈËÐÔ»¯µÄ¹¦Ð§£¬Ê¹ÆäÔ½·¢Ç¿Ê¢ÇÒÒ×ÓÚʹÓá£

¡°CwithClasses¡±µÄ½µÉú£¬²¢·ÇÒ»õí¶ø¾ÍµÄÁé¹âÕ§ÏÖ£¬¶øÊÇBjarneStroustrup¶Ô±à³ÌЧÂÊ¡¢´úÂë¿Éά»¤ÐÔºÍϵͳÐÔÄܵÄÉî¿Ì¶´²ìÓ벻и׷ÇóµÄ½á¾§¡£ËûÏ£Íû´´ÔìÒ»ÖÖÓïÑÔ£¬¼ÈÄÜÈóÌÐòÔ±¡°´¥Ãþµ½Ó²¼þµÄÂö²«¡±£¬ÓÖÄÜÈÃËûÃÇ¡°¹¹½¨³öÐÛΰµÄÈí¼þµîÌᱡ£

ÕâÖÖË«ÖØÄ¿µÄ£¬³ÉΪÁËC++ÔçÆÚÉè¼ÆÖÐ×î½¹µãµÄÇý¶¯Á¦¡£

ÔçÆÚµÄ¡°CwithClasses¡±ÔںܺéÁ÷ƽÉϱ£´æÁËCÓïÑÔµÄÓï·¨ºÍÓïÒ壬ÕâʹµÃ´ÓCÓïÑÔǨáã¹ýÀ´µÄ³ÌÐòÔ±Äܹ»Ïà¶ÔÇáËɵØË³Ó¦¡£ÃæÏò¹¤¾ßÌØÕ÷µÄÒýÈ룬ΪÈí¼þ¿ª·¢´øÀ´Á˸ïÃüÐԵĸıä¡£Àà³ÉΪÁ˹¹½¨ÖØ´ó³ÌÐòµÄ»ùʯ£¬ÔÊÐí¿ª·¢Õß½«Êý¾ÝºÍ²Ù×÷Êý¾ÝµÄÒªÁì·â×°ÔÚÒ»Æð£¬ÐγÉ×ÔÁ¦µÄÄ£¿é¡£

ÕâÖÖ·â×°ÐÔ²»µ«Ìá¸ßÁË´ú?ÂëµÄ¿É¶ÁÐԺͿÉά»¤ÐÔ£¬»¹¼«´óµØïÔÌ­ÁËÒòÈ«¾Ö±äÁ¿µÈÎÊÌâ´øÀ´µÄ³ÌÐò¹ýʧ¡£

¼ÌÐø»úÖÆÔòÔÊÐí´´?½¨ÐµÄÀ࣬ÕâЩÐÂÀà¿ÉÒÔ¼ÌÐøÏÖÓÐÀàµÄÊôÐÔºÍÐÐΪ£¬´Ó¶ø±Ü?ÃâÁË´ú?ÂëµÄÖØ¸´±àд£¬Ìá¸ßÁË¿ª·¢Ð§ÂÊ¡£¶ø¶à̬ÐÔÔòʹµÃ³ÌÐòÔÚÔËÐÐʱÄܹ»Æ¾Ö¤¹¤¾ßµÄÏÖʵÀàÐÍ×ö³ö²î±ðµÄÐÐΪ£¬ÕâΪ±àдԽ·¢ÎÞаºÍ¿ÉÀ©Õ¹µÄ?´úÂëÌṩÁË¿ÉÄÜ¡£

BjarneStroustrupµÄÔ¶¼û׿ʶÔÚÓÚ£¬ËûÊìϤµ½£¬´¿´âµÄÁýͳ²¢²»¿É½â¾öËùÓÐÎÊÌâ¡£ËûʼÖÕÇ¿µ÷C++µÄ¡°Á㿪ÏúÁýͳ¡±Ô­Ôò£¬ÕâÒâζ×ÅÒýÈëµÄÁýÍ³ÌØÕ÷²»?Ó¦¸Ã´øÀ´ÌØÁíÍâÔËÐÐÊмÛÇ®¡£ÀýÈ磬Ð麯ÊýËäÈ»ÌṩÁ˶à̬ÐÔ£¬µ«ÆäŲÓûúÖÆÔÚÉè¼ÆÊ±¾Í±»È«ÐÄÓÅ»¯£¬ÒÔÖ»¹ÜïÔÌ­ÐÔÄÜËðʧ¡£

ÕâÖÖ¶ÔÐÔÄܵļ«ÖÂ×·Çó£¬Ê¹µÃC++ÔÚϵͳ±à³Ì¡¢ÓÎÏ·¿ª·¢¡¢¸ßÐÔÄÜÅÌËãµÈÁìÓòʼÖÕÕ¼ÓÐמÙ×ãÇáÖØµÄµØ?λ¡£

Ëæ×Å¡°CwithClasses¡±µÄÒ»Ö±Éú³¤ºÍÍêÉÆ£¬ËüÖð½¥ÓâÔ½Á˼òÆÓµÄ¡°CµÄÀ©Õ¹¡±µÄÁìÓò?£¬Õ¹ÏÖ³ö×ÔÁ¦µÄÓïÑÔ÷ÈÁ¦¡£±´¶ûʵÑéÊÒÒ²ÊìϤµ½ÕâÏîÊÖÒÕµÄ?DZÁ¦£¬²¢ÔÚ1983Ä꽫ÆäÕýʽÃüÃûΪC++¡£Õâ¸öÃû×Ö×Ô¼º¾ÍÆÄÓÐÉîÒ⣺¡°++¡±ÊÇCÓïÑÔÖÐ×ÔÔöÔËËã·û£¬Ô¢Òâ×ÅC++ÊÇCÓïÑԵġ°Éý¼¶°æ¡±»ò¡°ÔöÇ¿°æ¡±¡£

´Ó¡°CwithClasses¡±µ½C++£¬Õâ²»µ«½öÊÇÃû³ÆµÄ¸Ä±ä£¬¸üÊDZà³Ì?Í·ÄÔµÄÒ»´Î±¼ÌÚ¡£BjarneStroustrupÒÀ¸½Æä׿ԽµÄ¶´²ìÁ¦ºÍ²»Ð¸µÄÆð¾¢£¬ÎªÌìÏÂÁôÏÂÁËÒ»ÃÅÄܹ»¼ÝÔ¦´Óµ×²ãÓ²¼þµ½ÖØ´óÓ¦ÓõÄͨÓñà³ÌÓïÑÔ¡£Ëû²»ÊÇÒ»¸öÔÚÄ»ºóĬĬÎÞÎŵįð²ÝÕߣ¬¶øÊÇһλÔÚ´úÂëÌìÏÂÀÓÃÔ¶¼ûºÍÖǻۣ¬¹´ÀÕ³öÐÛΰÀ¶Í¼µÄÐÞ½¨Ê¦¡£

ËûµÄÿһ´Î˼Ë÷£¬Ã¿Ò»´ÎˢУ¬¶¼ÎªC++×¢ÈëÁËÉúÃüÁ¦£¬²¢ÎªØÊºóµÄÎÞÊý¿ª·¢ÕßÆÌ¾ÍÁËͨÍù¸ßÐÔÄÜ¡¢¸ßЧÂʱà³Ì?֮·¡£

C++µÄ½ø»¯Ö®Â·£º±ê×¼»¯¡¢ÏÖ´ú»¯ÓëÓÀºãµÄÉúÃüÁ¦

BjarneStroustrup´´ÔìC++µÄ³õÖ¾£¬ÊÇΪÏàʶ¾öÏÖʵ¹¤³ÌÖеÄ?ÎÊÌ⣬µ«ËûµÄ×÷Æ·ºÜ¿ì¾ÍÎüÒýÁËÈ«Çò¿ª·¢ÕßµÄÑ۹⡣ÕâÃÅÓïÑÔÒÔÆäǿʢµÄÐÔÄÜ¡¢ÎÞаµÄÁýͳÄÜÁ¦ÒÔ¼°¶Ôµ×²ãÓ²¼þµÄ?ÓÅÒìÖ§³Ö£¬Ñ¸ËÙÔÚÒµ½çո¶ͷ½Ç¡£Ëæ×ÅC++µÄÆÕ±éÓ¦Ó㬲î±ð±àÒëÆ÷Ç徲̨֮¼ä·ºÆðÁËһЩ²»¼æÈݵÄÕ÷Ïó£¬Õâ¸ø¿çƽ̨¿ª·¢´ø?À´ÁËÌôÕ½¡£

ÕýÊÇÔÚÕâÑùµÄÅä¾°Ï£¬C++±ê×¼»¯µÄ?ºôÉùÔ½À´Ô½¸ß¡£±ê×¼»¯Òâζ×ÅΪC++½¨ÉèÒ»Ì×ͳһµÄ¹æ·¶£¬È·±£´úÂëÔÚ²»?ͬÇéÐÎϵĿÉÒÆÖ²ÐÔºÍÒ»ÖÂÐÔ¡£1998Ä꣬¹ú¼Ê±ê×¼»¯×éÖ¯£¨ISO£©ºÍ¹ú¼Êµç¹¤Î¯Ô±»á£¨IEC£©ÕýʽÐû²¼Á˵ÚÒ»¸öC++¹ú¼Ê±ê×¼¡ª¡ªISO/IEC14882:1998£¬Ë׳ÆC++98¡£

Õâ¸öÀï³Ì±®Ê½µÄÊÂÎñ£¬±ê¼Ç×ÅC++´ÓÒ»¸öÏà¶Ô×ÔÓÉÉú³¤µÄÓïÑÔ£¬×ßÏòÁ˹淶»¯¡¢ÏµÍ³»¯µÄÉú³¤½×¶Î¡£

C++98±ê×¼µÄÐû²¼£¬ÎªC++ÓïÑÔµÓÚ¨Á˼áʵµÄ»ù´¡£¬ËüÈ·Á¢ÁËÐí¶à½¹µãÌØÕ÷£¬ÈçÄ£°å£¨templates£©¡¢Òì³£´¦Öóͷ££¨exceptionhandling£©¡¢RTTI£¨Run-TimeTypeInformation£©µÈ¡£ÕâÐ©ÌØÕ÷µÄ¼ÓÈ룬¼«´óµØÔöÇ¿ÁËC++µÄ±í´ïÄÜÁ¦ºÍ¹¤³Ìʵ¼ùÄÜÁ¦¡£

Ä£°åµÄÒýÈ룬ʹµÃC++Äܹ»ÊµÏÖÕæÕýµÄ·ºÐͱà³Ì£¬±àд³öÄܹ»´¦Öóͷ£¶àÖÖÊý¾ÝÀàÐ͵ÄͨÓÃËã·¨ºÍÊý¾Ý½á¹¹£¬ÀýÈçSTL£¨StandardTemplateLibrary£©¾ÍÊÇC++98±ê׼ϵÄÓÅÒì´ú±í£¬ËüÌṩÁ˸»ºñµÄÊý¾Ý½á¹¹ºÍËã·¨£¬¼«´óµØÌá¸ßÁË¿ª·¢Ð§ÂÊ¡£

ÊÖÒÕµÄǰ½øÓÀÎÞÖ¹¾³¡£ÔÚC++98Ðû²¼Ö®ºó£¬ÅÌËã»ú¿ÆÑ§ÁìÓòÓ¿ÏÖ³öÐí¶àеÄÍ·ÄÔºÍÊÖÒÕ£¬Í¬Ê±Ò²Ì»Â¶ÁËC++98ÔÚijЩ·½Ãæ±£´æµÄȱ·¦¡£ÎªÁ˸úÉÏʱ´úµÄ³ÌÐò£¬C++±ê׼ίԱ»á²¢Ã»ÓÐÍ£ÏÂǰ½øµÄ½Å²½¡£ËæºóµÄÿһ´Î±ê×¼¸üУ¬¶¼ÏñÊÇÒ»´Î¶ÔC++µÄ¡°ÏÖ´ú»¯¡±Ë¢Ð£¬×¢ÈëеÄ?»îÁ¦£¬ÐÞ¸´¾ÉµÄÉ˺Û¡£

C++11£¨ÓÖ³ÆModernC++£©µÄÐû²¼£¬ÊÇC++Éú³¤Àú³Ì?ÖеÄÓÖÒ»¸öÖ÷ҪתÕ۵㡣ËüÒýÈëÁË´ó×ÚÏÖ´ú»¯µÄÌØÕ÷£¬ÈçÓÒÖµÒýÓã¨rvaluereferences£©¡¢Òƶ¯ÓïÒ壨movesemantics£©¡¢lambda±í´ïʽ£¨lambdaexpressions£©¡¢×Ô¶¯ÀàÐÍÍÆµ¼£¨autokeyword£©¡¢¹æÄ£forÑ­»·£¨range-basedforloops£©µÈµÈ¡£

ÕâÐ©ÌØÕ÷µÄ¼ÓÈ룬¼«´óµØÌáÉýÁËC++µÄ¿ª·¢Ð§ÂʺʹúÂëµÄ¿É¶ÁÐÔ£¬²¢ÇÒÔÚÐÔÄÜÉÏÒ²Óв»ÉÙÓÅ»¯¡£ÀýÈ磬Òƶ¯ÓïÒåµÄÒýÈ룬ʹµÃC++ÔÚ´¦Öóͷ£´ó×ÚÔÝʱ¹¤¾ßʱ£¬Äܹ»×èÖ¹²»ÐëÒªµÄ¿½±´?£¬´Ó¶øÏÔÖøÌá¸ßÐÔÄÜ¡£lambda±í´ïʽÔòÈú¯Êýʽ±à³Ì?µÄÆø¸ÅÔÚC++ÖеÃÒÔʵÏÖ£¬Ê¹µÃ±àд¾«Á·¡¢¸ßЧµÄÄäÃûº¯Êý³É?Ϊ¿ÉÄÜ¡£

C++11Ö®ºó£¬C++µÄ±ê×¼»¯Àú³Ì¼ÓËÙ¡£C++14¡¢C++17¡¢C++20£¬ÒÔÖÂ×îеÄC++23£¬±ê׼ίԱ»áÿÄê»òÁ½ÄêÐû²¼Ò»´Îбê×¼£¬²»?¶ÏµØÎªC++×¢ÈëеÄѪҺ¡£C++14´øÀ´ÁËÈç·ºÐÍlambda¡¢¶þ½øÖÆ×ÖÃæÁ¿µÈˢУ»C++17ÒýÈëÁËÈ´¹¹»¯°ó¶¨£¨structuredbindings£©¡¢ifconstexpr¡¢std::optional¡¢std::variantµÈ£¬½øÒ»²½¼ò»¯ÁË´úÂ룬Ìá¸ßÁËÇå¾²ÐÔ£»C++20¸üÊÇ¿°³ÆÒ»´Î¡°´ó°æ±¾¸üС±£¬ÒýÈëÁËÄ£¿é£¨modules£©¡¢¿´·¨£¨concepts£©¡¢Ð­³Ì£¨coroutines£©¡¢¹æÄ££¨ranges£©µÈÇ㸲ÐÔÌØÕ÷£¬¼«´óµØÔöÇ¿ÁËC++µÄ±í´ïÄÜÁ¦ºÍ¹¤³Ì»¯ÄÜÁ¦£¬Ò²ÈÃC++ÔÚ²¢·¢±à³Ì¡¢Òì²½±à³ÌµÈÁìÓò¸ü¾ß¾ºÕùÁ¦¡£

¡°17c.c++¡±Õâ¸ö˵·¨£¬×Ô¼º¿ÉÄܸü¶àµØÖ¸ÏòC++17±ê×¼£¬»òÕß·ºÖ¸2017ÄêǰºóÊ¢ÐеÄC++°æ±¾¡£µ«ÎÞÂÛÔõÑù£¬Ëü¶¼ÊÇC++ÂþÉϽø»¯Ê·ÖеÄÒ»¸öÖ÷Òª½Úµã¡£Ëü´ú±íÁËC++ÔÚÂÄÀúÁËC++98ºÍC++11µÄÏ´Àñºó£¬Ô½·¢³ÉÊì¡¢Ô½·¢Ã÷´ú»¯µÄÃæÄ¿¡£

C++17±ê×¼ÔÚC++11µÄ»ù´¡ÉÏ£¬¼ÌÐøÖÂÁ¦ÓÚÌáÉý¿ª·¢ÕßµÄÉú²úÁ¦£¬²¢ÒýÈëÁËһЩÄܹ»´øÀ´ÏÔÖøÐÔÄÜÌáÉýºÍ´úÂ뾫Á·ÐÔµÄÌØÕ÷¡£

ÏÖÔÚµÄC++£¬ÔçÒѲ»ÊÇÎôʱBjarneStroustrupË­ÈË¡°CwithClasses¡±µÄÖÊÆÓÈÝò¡£ËüÊÇÒ»¸öÖØ´ó¶øÖØ´óµÄÉú̬ϵͳ£¬Ò»¸öÒ»Ö±×ÔÎÒˢС¢Óµ±§Î´À´µÄ±à³Ì?ÓïÑÔ¡£ËüµÄÃû×Ö±³ºó£¬ÊÇÎÞÊý¿ª·¢Õß¡¢±ê׼ίԱ»á³ÉÔ±ÒÔ¼°ÊÖÒÕϲ»¶ÕßµÄÅäºÏÆð¾¢ºÍÖǻ۽ᾧ¡£

´Ó¡°CwithClasses¡±µÄÃÈÑ¿£¬µ½C++98µÄµÓÚ¨£¬ÔÙµ½C++11¡¢C++17¡¢C++20µÄÏÖ´ú»¯À˳±£¬C++µÄ¹ÊÊ£¬ÊÇÒ»²¿¹ØÓÚÒ»Ö±ÓâÔ½¡¢×·Çó׿ԽµÄÊ·Ê«¡£ËüÒÔÆäÆæÒìµÄ÷ÈÁ¦£¬¼ÌÐøÔÚÈí¼þÌìϵĸ÷¸ö½ÇÂäʩչ×Ų»¿ÉÌæ»»µÄ×÷Ó㬲¢ÇÒ£¬ËüµÄÉúÃüÁ¦£¬ÈÔÔÚÒÔ¾ªÈ˵ÄËÙÂÊ£¬Ò»Á¬È¼ÉÕ¡£

ÔðÈα༭£º ÀîÈðÓ¢
ÉùÃ÷£ºÖ¤È¯Ê±±¨Á¦ÕùÐÅÏ¢ÕæÊµ¡¢×¼È·£¬ÎÄÕÂÌá¼°ÄÚÈݽö¹©²Î¿¼£¬²»×é³ÉʵÖÊÐÔͶ×ʽ¨Ò飬¾Ý´Ë²Ù×÷Σº¦×Ôµ£
ÏÂÔØ¡°Ö¤È¯Ê±±¨¡±¹Ù·½APP£¬»ò¹Ø×¢¹Ù·½Î¢ÐŹ«Öںţ¬¼´¿ÉËæÊ±Ïàʶ¹ÉÊж¯Ì¬£¬¶´²ìÕþ²ßÐÅÏ¢£¬ÕÆÎղƲú»ú»á¡£
ÍøÓÑ̸ÂÛ
µÇ¼ºó¿ÉÒÔ½²»°
·¢ËÍ
ÍøÓÑ̸ÂÛ½ö¹©Æä±í´ïСÎÒ˽¼Ò¿´·¨£¬²¢²»Åúע֤ȯʱ±¨Ì¬¶È
ÔÝÎÞ̸ÂÛ
ΪÄãÍÆ¼ö
Ã÷ÐÇ»ù½ð:˾ÀíÕÅÇ廪£¬ÓÐÁËÖ°Îñ±ä»»
ÍøÕ¾µØÍ¼