»Æ½ð³ÇÍøÕ¾

17c.cÊÇË­Æð²ÝµÄ
ȪԴ£ºÖ¤È¯Ê±±¨Íø×÷ÕߣºÁõ»¢2026-03-03 03:31:57
wwwzqhsauikdwjbfkjabfwqr

ÔÐÓýÓë½µÉú£ºÒ»Î»Å²ÍþѧÕߵġ°Ò°ÐÄ¡±

ÏëÏóһϠ£¬ÔÚ20ÊÀ¼Í80ÄêÔ³õ £¬ÅÌËã»ú¿ÆÑ§µÄÎę̀ÉÏ £¬CÓïÑÔÓÌÈçһλÖÊÆÓÐÑÄ¿µÄ¹¤½³ £¬ÒÔÆä¸ßЧºÍ¿¿½üÓ²¼þµÄÌØÕ÷Ó®µÃ?ÁËÆÕ±éÔÞÓþ¡£ÕýÈçÈκÎÒ»¸ö³äÂú»îÁ¦µÄÁìÓòÒ»Ñù £¬ÈËÃÇ×ÜÊÇÅÎԸןüǿʢµÄ¹¤¾ß £¬Äܹ»¹¹½¨¸üÖØ´ó¡¢¸ü³é?ÏóµÄϵͳ¡£±Ëʱ £¬À´×Ôµ¤Âó°Âºú˹´óѧµÄBjarneStroustrup £¬Ò»Î»ÄêÇá¶ø¸»ÓÐÔ¶¼ûµÄÅÌËã»ú¿ÆÑ§¼Ò £¬Õý»³´§×ÅÒ»¸ö¿´Ëƴ󵨵ÄÉèÏë¡£

Ëû²¢²»ÊÇÆ¾¿ÕÐÞ½¨ò×Â¥º£ÊÐ £¬¶øÊÇÉîÊÜÒ»ÖÖÃûΪSimulaµÄÓïÑÔµÄÆô·¢¡£Simula £¬ÔçÔÚ60ÄêÔ¾ÍÒýÈëÁËÃæÏò¹¤¾ß±à³Ì£¨OOP£©µÄ¿´·¨ £¬ËüչʾÁËÔõÑùͨ¹ý¡°¹¤¾ß¡±À´×éÖ¯´úÂë £¬Ê¹³ÌÐò½á¹¹Ô½·¢ÇåÎú £¬Ò×ÓÚ¹ÜÀí¡£StroustrupÔÚÑо¿Öз¢Ã÷ £¬SimulaµÄÃæÏò¹¤¾ßÍ·ÄÔÔÚ´¦Öóͷ£´óÐÍ¡¢ÖØ´óµÄÈí¼þÏîĿʱ £¬¾ßÓÐ×ÔÈ»µÄÓÅÊÆ £¬Äܹ»¼«´óµØÌáÉý¿ª·¢Ð§ÂʺʹúÂëµÄ¿Éά»¤ÐÔ¡£

Simula×Ô¼ºÒ²´æ?ÔÚһЩÏÞÖÆ¡£ËüµÄÔËÐÐЧÂÊÏà¶Ô½ÏµÍ £¬²¢ÇÒÔÚÆäʱ²¢²»±»ÆÕ±éÖ§³Ö¡£StroustrupµÄ¡°Ò°ÐÄ¡±ÔÚÓÚ £¬ËûÏ£ÍûÄܹ»½«CÓïÑÔµÄЧÂʺÍSimulaµÄÃæÏò¹¤¾ßÌØÕ÷ÍŽáÆðÀ´ £¬´´Á¢³öÒ»ÖÖ¼Èǿʢ?ÓÖÒ×ÓÚʹÓõÄÓïÑÔ¡£ËûÉèÏëÁËÒ»ÖÖ¡°´øÀàµÄC¡±£¨CwithClasses£©µÄÓïÑÔ £¬Õâ²»µ«½öÊǼòÆÓµÄ¹¦Ð§µþ¼Ó £¬¶øÊÇÒ»ÖÖÉî¿ÌµÄÈںϡ£

ËûÏ£ÍûÔÚ±£´æCÓïÑÔ¸ßЧ¡¢ÎÞаµÄÌØµãµÄÒýÈëÀà¡¢¼ÌÐø¡¢¶à̬µÈÃæÏò¹¤¾ßµÄ¿´·¨ £¬ÉÁ¿ª·¢ÕßÄܹ»ÒÔ¸ü¸ß¼¶¡¢¸üÁýͳµÄ·½·¨À´Ë¼Ë÷ºÍÉè¼Æ³ÌÐò £¬´Ó¶ø¸üÇáËɵØÓ¦¶ÔÈÕÒæÔöÌíµÄÈí¼þÖØÆ¯ºó¡£

StroustrupÔÚ±´¶ûʵÑéÊÒ£¨BellLabs£©×îÏÈÁËÕâÏî³äÂúÌôÕ½µÄ?ÊÂÇé¡£±´¶ûʵÑéÊÒ £¬×÷ΪÅÌËã»ú¿ÆÑ§µÄÒ¡ÀºÖ®Ò» £¬»ã¾ÛÁËÖÚ¶à¶¥¼âµÄ¿ÆÑ§¼ÒºÍ¹¤³Ìʦ £¬ÕâÀïÔÐÓýÁËUnix²Ù?×÷ϵͳ¡¢CÓïÑÔµÈÖî¶àÀï³Ì±®Ê½µÄÊÖÒÕ¡£ÔÚÕâÑùÒ»¸ö³äÂúÁ¢ÒìÆø·ÕµÄÇéÐÎÖÐ £¬StroustrupµÃÒÔÈ«ÉíÐĵØÍ¶Èëµ½ËûµÄÓïÑÔÉè¼ÆÖС£

ËûûÓÐÑ¡Ôñ´ÓÁã×îÏÈ £¬¶øÊǽ«¡°CwithClasses¡±½¨ÉèÔÚCÓïÑԵĻù´¡ÉÏ¡£ÕâÖÖÑ¡ÔñÖÁ¹ØÖ÷Òª £¬ËüÒâζ×ÅÐÂÓïÑÔ¿ÉÒÔÎÞ·ìµØÊ¹ÓÃCÓïÑÔ¸»ºñµÄ¿âºÍ¹¤¾ß £¬²¢ÇÒÄܹ»ÓëÏÖÓеÄC´úÂë¼æÈÝ¡£ÕâΪÐÂÓïÑÔµÄÍÆ¹ãµÓÚ¨Á˼áʵµÄ»ù´¡ £¬×èÖ¹ÁËÏñÐí¶àÈ«ÐÂÓïÑÔÄÇÑùÃæÁÙ¡°ÁæØêÎÞÔ®¡±µÄÄæ¾³¡£

ÔÚ¡°CwithClasses¡±µÄÔçÆÚÉú³¤½×¶Î £¬StroustrupÃæÁÙ×ÅÎÞÊýµÄÊÖÒÕÄÑÌâºÍ¿´·¨ÉϵÄȨºâ¡£ËûÐèÒª×Ðϸ˼Á¿ÔõÑù½«ÃæÏò¹¤¾ßµÄ¿´·¨ÒÔÒ»ÖÖ×ÔÈ»¡¢¸ßЧµÄ·½·¨¼¯³Éµ½CµÄ?Óï·¨½á¹¹ÖС£ÀýÈç £¬ÔõÑùÉè¼ÆÀàµÄ³ÉÔ±»á¼û¿ØÖÆ £¬ÔõÑùʵÏÖÐ麯ÊýÒÔÖ§³Ö¶à̬ £¬ÒÔ¼°ÔõÑù¹ÜÀí¹¤¾ßµÄÉúÃüÖÜÆÚµÈµÈ¡£

ËûÒ»Ö±µØ¾ÙÐÐʵÑé¡¢µü´úºÍÓÅ»¯ £¬Ã¿Ò»´ÎÐ޸ͼÁ¦ÕùÔÚ¹¦Ð§¡¢ÐÔÄܺÍÒ×ÓÃÐÔÖ®¼äÕÒµ½×î¼ÑµÄƽºâµã¡£ÔÚÕâ¸öÀú³ÌÖÐ £¬Ëû²»µ«ÊÇһλÊÖÒÕ¿ª·¢Õß £¬¸üÊÇһλÓïÑÔÕÜѧ¼Ò £¬ËûÉîÈë˼Ë÷×ÅÔõÑùÈñà³ÌÓïÑÔ¸üºÃµØ·þÎñÓÚÈËÀàµÄÍ·ÄÔ·½·¨¡£

1983Äê £¬Ò»¸ö¾ßÓÐÀï³Ì±®ÒâÒåµÄʱ¿Ìµ½À´ÁË¡£¡°CwithClasses¡±Õýʽ¸üÃûΪC++¡£Õâ¸öÃû×Ö×Ô¼º¾ÍÔ̺¬×ÅÉîÒ⣺¡°++¡±ÊÇCÓïÑÔÖÐÓÃÓÚ×ÔÔöµÄÔËËã·û £¬ËüÐÎÏóµØÅú×¢ÎúC++ÊÇCÓïÑԵġ°½ø»¯¡±°æ±¾ £¬ÊÇCÓïÑÔµÄÔöÇ¿ºÍÀ©Õ¹¡£Õâ¸öÃû×ÖµÄÑ¡Ôñ £¬¼È±£´æÁËÓëCÓïÑԵĴ«³Ð¹ØÏµ £¬ÓÖÌåÏÖÁËÆäǿʢµÄÐÂÌØÕ÷¡£

C++µÄ·ºÆð £¬±ê¼Ç×ÅÃæÏò¹¤¾ß±à³ÌÓïÑÔ½øÈëÁËÒ»¸öеÄʱ´ú £¬Ëü²»µ«¼ÌÐøÁËCµÄ¾«Ëè £¬¸ü´øÀ´ÁËØ¨¹ÅδÓеÄǿʢÄÜÁ¦ £¬ÎªÈí¼þ¿ª·¢µÄδÀ´Ãè»æÁËеÄÀ¶Í¼¡£

Éú³¤ÓëÑݽø£º´Ó¡°Ò°ÐÄ¡±µ½¡°¾Þ½³¡±

C++µÄ½µÉú²¢?·ÇÒ»õí¶ø¾Í £¬ÆäÕæÕýµÄѤÀÃÔÚÓÚËüÒ»Á¬Ò»Ö±µÄÉú³¤ÓëÑݽø¡£ÔÚBjarneStroustrupµÄÏòµ¼Ï £¬C++ÓïÑÔ×îÏÈ×ßÏòÌìÏ £¬²¢ÔÚÕâ¸öÀú³ÌÖÐÒ»Ö±ÎüÊÕÑø·Ö £¬ÍêÉÆ×ÔÉí¡£ÔçÆÚµÄC++ £¬Ö»¹ÜÓµÓÐǿʢµÄÃæÏò¹¤¾ßÌØÕ÷ £¬µ«Æä±ê×¼»¯µÄÀú³ÌÏà¶Ô»ºÂý¡£

²î±ð±àÒëÆ÷¶ÔC++µÄÖ§³Öˮƽ·×Æç £¬Õâ¸ø¿ª·¢Õß´øÀ´ÁËÒ»¶¨µÄÀ§ÈÅ¡£C++µÄ?ǿʢÄÜÁ¦ºÍÆÕ±éµÄÓ¦ÓÃÔ¶¾° £¬Ê¹µÃËüÎüÒýÁËÔ½À´Ô½¶àµÄ¿ª·¢Õߺͳ§É̵ĹØ×¢¡£

1998Äê £¬¹ú¼Ê±ê×¼»¯×éÖ¯£¨ISO£©ÕýʽÐû²¼Á˵ÚÒ»¸öC++¹ú¼Ê±ê×¼¡ª¡ªC++98¡£ÕâÊÇÒ»¸öÖ÷ÒªµÄÀï³Ì±® £¬ËüΪC++ÓïÑÔÌṩÁËÒ»¸öͳһ¡¢¹æ·¶µÄ½ç˵ £¬Ê¹µÃ²î±ðƽ̨¡¢²î±ð±àÒëÆ÷ÉϵÄC++´úÂëÄܹ»¾ßÓиüºÃµÄ?¼æÈÝÐÔ¡£C++98±ê×¼ÒýÈëÁËÐí¶à½¹µãµÄ?ÓïÑÔÌØÕ÷ £¬ÈçÄ£°å£¨templates£©¡¢Òì³£´¦Öóͷ££¨exceptionhandling£©¡¢STL£¨StandardTemplateLibrary£©µÈ¡£

STLµÄÒýÈë¸üÊǸïÃüÐ﵀ £¬ËüÌṩÁËһϵÁиßЧ¡¢Í¨ÓõÄÊý¾Ý½á¹¹ºÍËã·¨ £¬¼«´óµØ¼ò»¯Á˳ÌÐòÔ±µÄÊÂÇé £¬ÈÃËûÃÇÄܹ»×¨×¢ÓÚ½â¾ö¸ü¸ß¼¶µÄÓªÒµÂß¼­ £¬¶ø·ÇÖØ¸´ÔìÂÖ×Ó¡£

C++98±ê׼ΪC++µÄÉú³¤µÓÚ¨Á˼áʵµÄ»ù´¡ £¬µ«ÊÖÒÕµÄÉú³¤ÓÀÎÞÖ¹¾³¡£Ëæ×ÅÅÌËã»úÓ²¼þµÄ·ÉËÙÉú³¤ºÍÈí¼þÐèÇóµÄÈÕÒæÖØ´ó»¯ £¬C++ÓïÑÔÒ²ÔÚÒ»Ö±µØ¸üл»´ú £¬ÒÔ˳ӦеÄÌôÕ½¡£2003Äê £¬C++03±ê×¼¶ÔC++98¾ÙÐÐÁËСµÄÐÞÕýºÍÔö²¹ £¬Ê¹ÆäÔ½·¢ÍêÉÆ¡£

ÕæÕýµÄ¡°´ó±¬Õ¨¡±±¬·¢ÔÚ2011Äê £¬C++11±ê×¼µÄÐû²¼ £¬±»ÓþΪC++ÓïÑÔµÄÒ»´Î¡°ÖØÉú¡±¡£C++11ÒýÈëÁË´ó×ÚµÄÏÖ´ú?»¯ÌØÕ÷ £¬¼«´óµØÌáÉýÁËÓïÑԵıí´ïÄÜÁ¦ºÍ¿ª·¢Ð§ÂÊ¡£ÀýÈç £¬autoÒªº¦×ÖµÄÒýÈëʹµÃÀàÐÍÍÆµ¼Ô½·¢±ã½Ý£»ÓÒÖµÒýÓã¨rvaluereferences£©ºÍÒÆ¶¯ÓïÒ壨movesemantics£©µÄ·ºÆð £¬ÏÔÖøÌá¸ßÁË×ÊÔ´¹ÜÀíµÄЧÂÊ £¬ÓÈÆäÊÇÔÚ´¦Öóͷ£´óÐ͹¤¾ßʱ£»lambda±í´ïʽ£¨lambdaexpressions£©µÄ¼ÓÈë £¬Ê¹µÃ?º¯Êýʽ±à³ÌÆø¸ÅÔÚC++ÖеÃÒÔÇáËÉʵÏÖ£»ÖÇÄÜÖ¸Õ루smartpointers£©µÄ±ê×¼»¯ £¬ÓÐÓýâ¾öÁËÄÚ´æ¹ÜÀíÖеij£¼ûÎÊÌâ £¬ïÔÌ­ÁËÄÚ´æ×ß©µÄΣº¦¡£

C++11µÄÕâЩÐÂÌØÕ÷ £¬ÈÃC++ÔÚ¼á³ÖÆä¸ßÐÔÄÜÓÅÊÆµÄ±äµÃÔ½·¢Ò×ÓÚ±àдºÍά»¤ £¬ÎüÒýÁË´ó×ÚÐÂÓû§µÄ¼ÓÈë¡£

C++µÄÑݽø²¢Î´×èÖ¹ £¬ËüÒÔÿÈýÄêÒ»¸ö°æ±¾µÄ½Ú×à £¬Ò»Á¬ÏòǰÂõ½ø¡£C++14¡¢C++17¡¢C++20 £¬ÒÔ¼°ÕýÔÚÖÆ¶©µÄC++23 £¬Ã¿Ò»´Î±ê×¼µÄ¸üж¼´øÀ´ÁËеľªÏ²¡£C++14½øÒ»²½ÍêÉÆÁËC++11µÄÌØÕ÷£»C++17ÒýÈëÁËÈ´¹¹»¯°ó¶¨£¨structuredbindings£©¡¢Îļþϵͳ¿â£¨filesystemlibrary£©¡¢²¢ÐÐSTL£¨parallelSTL£©µÈ £¬½øÒ»²½ÌáÉýÁË¿ª·¢Ð§Âʺͱ㵱ÐÔ£»C++20ÔòÊÇÒ»´Î¼¯´ó³ÉʽµÄ¸üР£¬ËüÒýÈëÁËConcepts£¨¿´·¨£©¡¢Ranges£¨¹æÄ££©¡¢Modules£¨Ä£¿é£©¡¢Coroutines£¨Ð­³Ì£©µÈ»®Ê±´úµÄÐÂÌØÕ÷¡£

ConceptsʹµÃ?Ä£°åÔª±à?³ÌÔ½·¢Çå¾²ºÍÒ×¶Á£»RangesΪÐòÁвÙ×÷ÌṩÁ˸ü¾«Á·¡¢¸üǿʢµÄ½Ó¿Ú£»Modules½â¾öÁËÍ·Îļþ°üÀ¨µÄÎÊÌâ £¬´ó·ùÌáÉýÁ˱àÒëËÙÂÊ£»CoroutinesÔòΪÒì²½±à³ÌÌṩÁËеĽâ¾ö¼Æ»®¡£

ÏÖÔÚ £¬C++ÒѾ­³ÉΪһÃÅ¡°¾Þ½³¡±¼¶µÄ±à³ÌÓïÑÔ¡£ËüÎÞ´¦²»?ÔÚ £¬´Ó²Ù×÷ϵͳ¡¢Ç¶Èëʽϵͳ¡¢¸ßÐÔÄÜÅÌËã¡¢ÓÎÏ·¿ª·¢¡¢Í¼ÐÎͼÏñ´¦Öóͷ£ £¬µ½½ðÈÚÉúÒâϵͳ¡¢È˹¤ÖÇÄÜÁìÓò £¬C++¶¼ÊÎÑÝ×ÅÖÁ¹ØÖ÷ÒªµÄ?½ÇÉ«¡£ËüµÄǿʢÐÔÄÜ¡¢ÎÞаµÄÄÚ´æ¿ØÖÆÄÜÁ¦ÒÔ¼°¸»ºñµÄÉú̬ϵͳ £¬Ê¹ÆäÔÚ¶ÔÐÔÄÜÒªÇó¼«Öµij¡¾°ÏÂÒÀÈ»ÊÇÎÞ¿ÉÌæ»»µÄÑ¡Ôñ¡£

»ØÊ×BjarneStroustrup×î³õµÄ¡°Ò°ÐÄ¡± £¬Ëû²»µ«³É?¹¦µØ´´Á¢ÁËÒ»ÖÖеıà³ÌÓïÑÔ £¬¸üÉî¿ÌµØÓ°ÏìÁËÕû¸öÈí¼þ¿ª·¢ÁìÓò¡£C++µÄ?¹ÊÊ £¬ÊÇÒ»¸ö¹ØÓÚ¶´²ìÁ¦¡¢¼á³ÖºÍÒ»Ö±Á¢ÒìµÄ´«Ææ¡£Ëü֤ʵÎú £¬Î°´óµÄÊÖÒÕÍùÍùÔ´ÓÚ¶ÔÏÖÓв»?×ãµÄÉî¿ÌÃ÷È· £¬ÒÔ¼°¶ÔδÀ´Ç÷ÊÆµÄÃôÈñÕÆÎÕ £¬²¢×îÖÕͨ¹ýÒ»Á¬µÄ´òÄ¥Óë½ø»¯ £¬³É¼¨Ò»¶Î²»ÐàµÄ¿Æ¼¼´«Ææ¡£

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