2Ãë´øÄãÏàʶ17c.c++ÊÇË­Æð²ÝµÄ??È«¼¯×ÊÔ´Ãâ·Ñ¿´µ½àË??ÓÃÁ¦?C++Ö®¸¸Óë±ê×¼»¯µÄ³õÐĵ±ÄãÌýµ½¡°C++17¡± £¬ÊÇ·ñÔøºÃÆæÕâ´®×Ö·û±³ºóÕ¾×ÅÔõÑùһȺÈË£¿×Åʵ £¬ÃյײØÔÚһλ±à³Ì¾Þ½³µÄÃû×ÖÀ¡ªBjarneStroustrup ¡£ÊÇµÄ £¬C++ÓïÑÔµÄÊ×´´ÈË £¬Ò²ÊÇC++±ê×¼»¯Àú³ÌÖÐʼÖÕµÄÁé»êÈËÎï ¡£µ«¡°C++17¡±µÄÆð²Ý¾ø·ÇÒ»ÈËÖ®¹¦ £¬¶øÊÇÒ»³¡»ã¾ÛÈ«Çò¶¥¼âÖǻ۵ÄЭ×÷Ê¢Ñç ¡£1980ÄêÔ £¬StroustrupÔÚ±´¶ûʵÑéÊÒ¿ª·¢³öC++ £¬³õÖ¾ÊÇÀ©Õ¹CÓïÑÔ £¬¸¶ÓëÆäÃæÏò¹¤¾ßµÄ÷È"> 2Ãë´øÄãÏàʶ17c.c++ÊÇË­Æð²ÝµÄ">

paµç×Ó¹Ù·½ÍøÕ¾

Ê×Ò³

2Ãë´øÄãÏàʶ17c.c++ÊÇË­Æð²ÝµÄ

ÍâµØÊ±¼ä2025-10-20bvcmnxbvusegruiwoehrlkegwh

C++Ö®¸¸Óë±ê×¼»¯µÄ³õÐÄ

µ±ÄãÌýµ½¡°C++17¡± £¬ÊÇ·ñÔøºÃÆæÕâ´®×Ö·û±³ºóÕ¾×ÅÔõÑùһȺÈË£¿×Åʵ £¬ÃյײØÔÚһλ±à³Ì¾Þ½³µÄÃû×ÖÀ¡ªBjarneStroustrup ¡£ÊÇµÄ £¬C++ÓïÑÔµÄÊ×´´ÈË £¬Ò²ÊÇC++±ê×¼»¯Àú³ÌÖÐʼÖÕµÄÁé»êÈËÎï ¡£µ«¡°C++17¡±µÄÆð²Ý¾ø·ÇÒ»ÈËÖ®¹¦ £¬¶øÊÇÒ»³¡»ã¾ÛÈ«Çò¶¥¼âÖǻ۵ÄЭ×÷Ê¢Ñç ¡£

1980ÄêÔ £¬StroustrupÔÚ±´¶ûʵÑéÊÒ¿ª·¢³öC++ £¬³õÖ¾ÊÇÀ©Õ¹CÓïÑÔ £¬¸¶ÓëÆäÃæÏò¹¤¾ßµÄ÷ÈÁ¦ ¡£Ëæ×ÅC++±»ÆÕ±éÓ¦Óà £¬±ê×¼»¯ÐèÇóÈÕÒæÆÈÇÐ ¡£1998Äê £¬Ê׸öISO/IEC14882±ê×¼£¨C++98£©½µÉú £¬Stroustrup×÷Ϊ½¹µãÉè¼ÆÕß £¬ÓëISOC++ίԱ»á£¨¼ò³ÆWG21£©ÅäºÏµÓÚ¨ÁË»ù´¡ ¡£

ÒÔºóµÄC++03¡¢C++11¡¢C++14ÔÙµ½C++17 £¬Ã¿Ò»°æµü´ú¶¼Äý¾ÛÁËίԱ»áÊý°ÙÃûר¼ÒµÄÐÄѪ ¡£

C++17µÄÆð²ÝÍŶÓÊÂʵÊÇË­£¿WG21ίԱ»áÊÇÒªº¦ÃÕµ× ¡£Õâ¸öÓÉÈ«Çò¿ª·¢Õß¡¢Ñ§ÕßºÍÆóÒµ´ú±í×é³ÉµÄ×éÖ¯ £¬Í¨¹ýÌá°¸¡¢ÌÖÂÛ¡¢Í¶Æ±µÄÃñÖ÷Á÷³ÌÍÆ¶¯ÓïÑÔÑݽø ¡£StroustrupËä²»ÔÙµ¥¶À¡°Æð²Ý¡± £¬µ«×÷ΪίԱ»áµÄ½¹µãÕÕÁÏ £¬ËûµÄÉè¼ÆÕÜѧʼÖչᴮÆäÖÐ ¡£ÀýÈç £¬C++17Ç¿µ÷¼ò»¯´úÂë¡¢ÌáÉýÐÔÄÜÓëÇå¾²ÐÔ £¬ÕýÑÓÐøÁËËû¡°ÈÃC++¸üÓÅÑŸßЧ¡±µÄÔ¸¾° ¡£

ÓÐȤµÄÊÇ £¬C++17µÄÐí¶àÌØÕ÷Ô´×ÔÉçÇøÐ¢Ë³ ¡£ºÃ±Èstd::optional£¨×èÖ¹¿ÕÖµÀ§ÈÅ£©¡¢½á¹¹»¯°ó¶¨£¨¼ò»¯¶à·µ»ØÖµ´¦Öóͷ££©µÈ £¬¶¼ÊÇ¿ª·¢ÕßÒ»Ñùƽ³£Í´µãµÄÖ±½Ó»ØÓ¦ ¡£ÕâÒâζ×Å £¬C++17µÄ¡°Æð²ÝÕß¡±²»µ«ÊÇίԱ»áר¼Ò £¬¸üÊÇÎÞÊýÒ»Ïß³ÌÐòÔ±¡ª¡ªËûÃǵÄʵ¼ùÐèÇóÇý¶¯ÁËÓïÑԵĽø»¯ ¡£

͸¹ýC++17 £¬ÎÒÃÇ¿´µ½¿ªÔ´Óë±ê×¼»¯ÔõÑùÍêÉÆÈÚºÏ ¡£Ï´ε±ÄãÓÃÒ»Ðо«Á·´úÂëʵÏÖÖØ´ó¹¦Ð§Ê± £¬±ðÍüÁ˱³ºóÄÇȺĬĬ¸û×÷µÄ¡°ÓïÑÔÐÞ½¨Ê¦¡± ¡£

´ÓÌá°¸µ½±ê×¼£ºC++17µÄ½µÉúÖ®ÂÃ

C++17µÄÆð²ÝÀú³ÌÓÌÈçÒ»²¿¿Æ¼¼¼Í¼Ƭ £¬³äÂúЭ×÷¡¢±ç˵ÓëÍ»ÆÆ ¡£Ëü²¢·Çƾ¿Õ½µÉú £¬¶øÊÇÀú¾­5ÄêÄ¥Á¶ £¬´ÓÊý°Ù·ÝÌá°¸ÖÐɸѡ³öµÄÓ¢»ª ¡£ÕâÒ»ÇÐʼÓÚ2012ÄêC++11Ðû²¼ºó £¬ÉçÇø¶Ô¡°¸üÏÖ´ú¡¢¸üÒ×ÓᱵĺôÉù ¡£

WG21ίԱ»á½ÓÄÉÑÏ¿áµÄÁ÷³Ì£ºÈκÎÐÂÌØÕ÷ÐèÒÔÌá°¸£¨Paper£©ÐÎʽÌá½» £¬ÂÄÀúÑо¿¡¢ÌÖÂÛ¡¢Ð޸ġ¢Í¶Æ±µÈ¶àÂÖïÔÌ­ ¡£ÀýÈç £¬C++17µÄ¡°Îļþϵͳ¿â¡±£¨std::filesystem£©Ô´×ÔBoost¿âµÄʵ¼ùÑéÖ¤ £¬ÓÉ¿ª·¢ÕßBemanDawesÌá°¸²¢Íƶ¯£»²¢ÐÐËã·¨£¨std::parallel)ÔòÈÚºÏÁËIntel¡¢GoogleµÈÆóÒµµÄÐÔÄÜÓÅ»¯ÂÄÀú ¡£

ÿһ²½¶¼ÌåÏÖ×Å¡°ÊÊÓÃÖ÷Ò塱¾«Éñ¡ª¡ªÖ»ÄÉÈë³ÉÊì¡¢ÆÕ±éÐèÇóµÄ¹¦Ð§ ¡£

StroustrupÔÚÀú³ÌÖÐÊÎÑÝ¡°ÊØÃÅÈË¡±½ÇÉ« ¡£Ëû¼á³ÖC++Ó¦¼á³Ö¡°Á㿪ÏúÁýͳ¡±Ô­Ôò£¨¼´¸ßÐÔÄܲ»µ±Ð­£© £¬×赲̫¹ýÖØ´ó»¯ ¡£ÕýÒòÔÆÔÆ £¬C++17ÉáÆúÁËһЩʵÑéÐÔ¿´·¨ £¬¾Û½¹ÓÚÌáÉý¿ª·¢Ð§ÂÊ ¡£ºÃ±Èifconstexpr±àÒëʱÌõ¼þÅÐ¶Ï £¬ÈÃÄ£°å´úÂë¸ü¾«Á·£»ÄÚÁª±äÁ¿Ïû³ýÈßÓà½ç˵¡ª¡ªÕâЩ¸Ä¶¯¿´ËÆÏ¸Ð¡ £¬È´×ãÒÔ½ÚÔ¼³ÌÐòÔ±Êý°ÙÍòСʱ ¡£

ÖµµÃ×¢ÖØµÄÊÇ £¬C++17µÄÆð²ÝÒ²ÃæÁÙÌôÕ½ ¡£Î¯Ô±»áÐèÆ½ºâоÉÌØÕ÷¼æÈÝÐÔ¡¢±àÒëÆ÷ʵÏÖÄѶȡ¢ÉçÇø²»Í¬µÈÎÊÌâ ¡£µ«×îÖÕ £¬2017ÄêÐû²¼µÄISO/IEC14882:2017ÒÔ¸ßÆ±Í¨¹ý £¬³ÉΪC++ÑݽøÊ·ÉϵÄÖ÷ÒªÀï³Ì±® ¡£

½ñÌì £¬C++17ÒÑÉøÍ¸ÖÁ²Ù×÷ϵͳ¡¢ÓÎÏ·ÒýÇæ¡¢½ðÈÚϵͳµÈ½¹µãÁìÓò ¡£ËüµÄ¹ÊÊÂÌáÐÑÎÒÃÇ£ºÎ°´óÊÖÒÕÀúÀ´²»Êǵ¥ÈËÐã £¬¶øÊÇÕûÌåÖǻ۵Ľᾧ ¡£ÈôÄãÏëÉî¶ÈÌåÑéC++17 £¬ÎÞ·Á´ÓÒ»ÐÐstd::variant»òÒ»´Î²¢ÐÐÅÅÐò×îÏÈ¡ª¡ªÃ¿Ò»¸öÓï·¨ÌDZ³ºó £¬¶¼ÓÐһȺÈËΪÄãÆÌ· ¡£

ÌÀÄ·ÊåÊåµÄÎÂܰÌáÐÑÊ®°Ë³åÉ׿ÏÈÑ £¬ÃÛÑ©±ù³ÇÒªÂôÆ¡¾ÆÁË£¡¿ç½çÊÕ¹º¸£Â¹¼Ò £¬¡°Ñ©Íõ¡±½«ÂôÏÖ´òÏÊÆ¡

ÍøÕ¾µØÍ¼