bevictorΰµÂ

17c++£º´úÂë±³ºóµÄ»êÁéȺÏñ £¬²»Ö¹Ò»ÈË £¬²»Ö¹Ò»ÖÖÉùÒô
ÆðÔ´£ºÖ¤È¯Ê±±¨Íø×÷ÕߣºÅËÃÀÁá2026-02-17 02:53:48
wwwzqhsauikdwjbfkjabfwqr

ÐÇ»ðÁÇÔ­£º17c++µÄƽÃ÷ÓëȺÐÇè­è²

¡°17c++²¢·ÇÒ»ÈËÖ®±Ê¡±¡ª¡ªÕâ¾ä»° £¬³õÌý֮Ϡ£¬»òÐí»áÈÃÈËåÚÏ뵽ij¸öÉñÃØµÄ´úºÅ £¬Ò»¸ö°µ²ØÔÚ´úÂëÉî´¦µÄ´«¹Ö½ÜÎï¡£ÊÂʵԶ±ÈÕâÔ½·¢ÐÚÓ¿ÅìÅÈ £¬Ô½·¢³ä³âÈËÎÄÉ«²Ê¡£ËüÊÇÒ»´Î¼¯ÌåµÄÄź° £¬Ò»´ÎÖǻ۵蘆´ £¬Ò»´ÎÎÞÊýË«ÊÖ¹²Í¬»ÓÈ÷º¹Ë®µÄ׳Àö»­¾í¡£µ±ÎÒÃÇÌÖÂÛ17c++ʱ £¬ÎÒÃDz¢·ÇÔÚÕ°Ñöһλ¹Âµ¨Ó¢ÐÛ £¬¶øÊÇÔÚÄýÊÓһƬè­è²µÄÐǺÓ¡£

c++˵»°×ÔÉí £¬¾ÍÊÇÒ»²¿Âþ³¤¶øÏÊÀöµÄÑݽøÊ· £¬¶øÃ¿Ò»´ú³ß¶È£¨ÈçC++11¡¢C++14¡¢C++17¡¢C++20µÈ£©µÄµ®Éú £¬¶¼Àë²»¿ªÒ»¸öÖØ´ó¶ø»îÔ¾µÄÉçÇø¡£17c++ £¬ÌØÖ¸C++17³ß¶È £¬ÊÇÕâ¸öÉçÇø¼¯ÌåÖǻ۽ᾧµÄÓÖÒ»³ÁÒªÀï³Ì±®¡£Ëü²»ÊÇÓÉijλ¡°Ê¥ÈË¡±Æ¾¿Õ´´Ôì £¬¶øÊÇÓÉÀ´×ÔÊÀ½ç¸÷µØ¡¢·ÖÆç²¼¾°¡¢·ÖÆçÁìÓòµÄ³ÉǧÉÏÍòÃû¹¤³Ìʦ¡¢×êÑÐÈËÔ±¡¢½ÌÓýÕßÉõÖÁÊÇÖܵ½µÄÒµÓà°®ºÃÕß £¬ÔÚÀú¾­ÎÞÊý´Î»áÒé¡¢»áÉÌ¡¢Ìá°¸¡¢Í¶Æ±ºÍʵ¼Ê¼ìÑéºó £¬¹²Í¬´ò?Ä¥¶ø³É¡£

ÉèÏëһϠ£¬ÔÚ¹ú¼Ê³ß¶È»¯×éÖ¯£¨ISO£©µÄC++³ß¶ÈίԱ»á£¨WG21£©µÄ»áÒéÊÒÀï £¬³¡¾°ºÎÆä׳¹Û¡£À´×Ô΢Èí¡¢¹È¸è¡¢Æ»¹û¡¢GCC¡¢ClangµÈ¸÷´ó¼¼Êõ¾ÞÍ·µÄ?´ú?±í £¬ÒÔ¼°¶à¶à¸ßУµÄ½ÌÊںͶÀÁ¢¿ª·¢Õß £¬Î§×øÔÚһ· £¬ÎªÁËÒ»¸öÄ£°åÍÆµ¼¹æ¶¨¡¢Ò»¸öиöÐÔÓï·¨¡¢Ò»¸ö»úÄÜÓÅ»¯¹æ»® £¬ÕùµÃÃæºì¶ú³à £¬ÓÖÔڹؼüʱ¿Ì´ï?³É¹²Ê¶¡£

ÿһ´ÎµÄÕù³³ £¬Ã¿Ò»´ÎµÄÍ×Э £¬Ã¿Ò»´ÎµÄ´´Ð £¬¶¼Äý¾Û×ÅËûÃǵÄרҵ֪ʶ¡¢¶Ô˵»°µÄ?¿á°®ÒÔ¼°¶ÔÈí¼þ¹¤³Ì½«À´µÄÉî¿Ì¶´²ì¡£

¡°17c++¡¹Øâ¸ö±ê?Ç© £¬ÏÖʵÉÏÊǶÔC++17ÕâÒ»ÌØ°´¹¦·ò½ÚµãÉÏ˵»°¸öÐÔ¼¯ÖеĸÅÀ¨¡£ÕâЩ¸öÐÔ £¬Èçifconstexpr¡¢½á¹¹»¯°ó¶¨£¨structuredbindings£©¡¢std::optional¡¢std::variant¡¢std::any¡¢Îļþϵͳ¿â()¡¢²¢ÐÐËã·¨ÒÔ¼°´óÁ¿µÄ˵»°¸Ä½øºÍ¿â¼ÓÇ¿ £¬¶¼ÊÇÉçÇø³ÉÔ±Ãdz־Ã˼ÂǺÍÖÂÁ¦µÄ³É¾Í¡£

ÿһ¸ö¸öÐÔ±³ºó £¬¶¼ÓÐһȺ±¨´ðÁËÍÆ¶¯Ëü½øÈë³ß¶ÈÖ§³öÁ˼è¿àµÄÖÂÁ¦¡£ËûÃÇ׫дÌá°¸ £¬½øÐм¼Êõ·ÖÎö £¬±à?д²âÊÔÓÃÀý £¬ÓëÆäËûίԱ»á³ÉÔ±¹µÍ¨ £¬½â¾ö¸÷À༼ÊõÄÑÌâºÍDZÔڵļæÈÝÐÔÎÊÌâ¡£

ÀýÈç £¬ifconstexprµÄÒýÈë £¬¼«´óµØ¼ÓÇ¿ÁËÄ£°åÔª±à³ÌµÄÄÜÁ¦ £¬ÈÃǰÌá±àÒëÔÚÄ£°å¸ßµÍÎÄÖÐÔ½·¢Ö±¹ÛºÍ¸ßЧ¡£Õâ¸ö¸öÐÔµÄÌá³öºÍÃÀÂú £¬ÊÇÎÞÊý´Î¹ØÓÚÄ£°åÔª±à³ÌÍ´µã»áÉ̵IJúÆ·¡£½á¹¹»¯°ó¶¨ £¬ÔòÈôúÂëÔ½·¢¼ò½à £¬¿ÉÄÜ·½±ãµØ½â¹¹Ôª×é¡¢½á¹¹Ìå¡¢Êý×éµÈ¡£Õâ±³ºó £¬ÊÇ¿ª·¢ÕßÃǶÔÌá¸ß´úÂë¿É¶ÁÐԺͳö²úÁ¦µÄ²»Ð¸×êÓª¡£

¶østd::optional¡¢std::variant¡¢std::anyµÈй¤¾ßµÄ²ÎÓë £¬ÔòΪ´¦ÖÿÉÄÜȱʧµÄÖµ¡¢ÀàÐͲ»È·¶¨µÄÇé¿öÌṩÁ˸ü°²È«¡¢¸üÓÅÑŵĽâ¾ö¹æ»® £¬¼«´óµØÏ÷¼õÁË¿ÕÖ¸ÕëÒì³£ºÍÀàÐÍת»»µÄ·çÏÕ¡£

¸ü³ÁÒªµÄÊÇ £¬17c++µÄµ®Éú²¢·ÇÒ»»Ó¶ø¾Í £¬ËüÊÇÔÚC++11¡¢C++14µÈÏÈÐг߶ȵĻù´¡ÉÏ £¬ÎüÊÕÁËÉçÇøµÄ·´À¡ £¬½â¾öÁËÏÈǰ°æ±¾ÒÅÁôµÄһЩÎÊÌâ £¬²¢³¯×ŸüÏÖ´ú»¯¡¢¸ü°²È«¡¢¸üÒ×Óõķ½Ïò²»ÐÝÑݽø¡£ÕâÊÇÒ»¸öÂÝÐýÉÏÉýµÄ¹ý³Ì £¬Ã¿Ò»´Î³ß¶ÈµÄ¸üР£¬¶¼ÊǶÔǰһ´Îµü´úµÄ½¨¸Ä¡¢²¹³äºÍÉý»ª¡£

ËùÒÔ £¬¡°17c++²¢·ÇÒ»ÈËÖ®±Ê¡¹Øâ¾ä»° £¬ÊǶÔÕâÖÖ¼¯ÌåÖǻۺͺÏ×÷ÐÄÁéµÄ×îºÃ×¢½â¡£ËüÐû¸æ×Å £¬ÏÖ´úc++˵»°µÄÿһ´Î?½øÈ¡ £¬¶¼Ô´ÓÚһȺÈ˵Ĺ²Í¬Ô¸¾°ºÍ²»?и·Ü¶·¡£Ëü²»ÊÇij¸öÌì²ÅµÄÁé¹âÒ»ÉÁ £¬¶øÊÇÎÞÊý´Î˼ÏëÅöײ¡¢¼¼Êõ¹¥¼áºÍÉçÇø¹²Ê¶µÄ»ã¾Û¡£µ±ÎÒÃÇʹÓÃ17c++µÄ¸öÐÔ±àд´úÂëʱ £¬ÎÒÃÇÏÖʵÉÏÊÇÔÚÏíÊÜÒ»¸öÖØ´ó¡¢³ä³â»îÁ¦µÄ?¿ª·¢ÕßÉú̬ϵͳËùÌṩµÄ³É?¹û¡£

ÕâÊÇÒ»ÖÖÔðÈÎ £¬Ò²ÊÇÒ»ÖÖ¸ßÂý £¬ÓÉÓÚÎÒÃÇÊÇÕâ¸öΰ´óÊÂÒµµÄÒ»²¿ÃÅ £¬¼´±ãÖ»ÊÇÒ»¸ö΢Ó׵Ľڵã £¬Ò²³ÐÔØ×ÅÉçÇøµÄµÈ´ýºÍ¶Ô½«À´µÄ¹±Ïס£

²»Ö¹Óڳ߶ȣº17c++µÄÐÔÃüÁ¦Ó뽫À´»ØÏì

¡°17c++²¢·ÇÒ»ÈËÖ®±Ê¡± £¬Õâ¾ä»°µÄ?Éî²ãÔ¢Òâ £¬Ô¶²»Ö¹ÓÚ¶ÔC++17³ß¶ÈÐγɹý³ÌµÄÃèÊö £¬Ëü¸üÖ¸ÏòÁË17c++ÔÚÕû¸öc++Éú̬ÖеÄÐÔÃüÁ¦¡¢Ó°ÏìÁ¦ºÍ½«À´»ØÏì¡£Õâ¸ö¡°ÈºÌ塱µÄ×é³É £¬Ô¶±È³ß¶ÈίԱ»áµÄ³ÉÔ±ÃǸüΪ¿í·º £¬ËüµÄÔË×÷·½Ê½ £¬Ò²Ô¶±ÈÒ»´Î´Î»áÒéµÄͶƱ±í¾öÔ½¶¯Ô±Ì¬ºÍ¶àÔª¡£

³ß¶ÈίԱ»áµÄ?¹¤×÷ £¬Îª17c++µì¶¨Á˼áʵµÄ»ù´¡ £¬µ«ËüµÄÕæÕýÐÔÃüÁ¦ £¬È´ÊÇÔÚÎÞÊý¿ª·¢ÕßÊÖÖеÃÒÔ¿ª·ÅºÍÒ»Á¬¡£µ±C++17³ß¶ÈÕýʽ°ä²¼ºó £¬Ëü±ãÈçͳһ¿ÅÖÖ×Ó £¬ÂäÈëÁËÈ«ÇòÊý°ÙÍò¿ª·¢Õß¡ª¡ªÔ̺¬ÄÇЩΪ³ß¶È¹±Ï×¹ý´úÂëµÄÈË £¬Ò²Ô̺¬ÄÇЩ´ÓδÇ××Բμӹý³ß¶ÈÔì¶©¡¢È´Ã¿Ìì¶¼ÔÚʹÓÃc++µÄ¹¤³ÌʦÃÇ¡ª¡ªµÄÄàÍÁÖ®ÖС£

ÕýÊÇÕâЩ¡°·ÇÒ»ÈË¡±µÄ?¿ª·¢Õß £¬½«17c++µÄ¸öÐÔÈÚÈëµ½ËûÃǵÄÏÖʵÏîÄ¿ÖС£ËûÃÇ¿ÉÄÜÔÚÒ»¸öǶÈëʽϵͳµÄÇý¶¯·¨Ê½ÖÐ £¬ÆæÃîµØÊ¹ÓÃifconstexprÀ´ÓÅ»¯·ÖÆçÓ²¼þÅäÖÃϵıàÒëÐÐΪ £»¿ÉÄÜÔÚ¿ª·¢Ò»¸ö¸ß»úÄܽðÈÚÂòÂôϵͳʱ £¬ÀûÓýṹ»¯°ó¶¨À´¼ò»¯¸´ÔÓÊý¾Ý½á¹¹µÄ½âÎö £»¿ÉÄÜÔÚ¹¹½¨Ò»¸ö´óÐÍͼÐÎäÖȾÒýÇæÊ± £¬Í¨¹ýstd::variantÀ´ÖÎÀí·ÖÆçÀàÐ͵ÄäÖȾ×ÊÔ´ £»Ò²¿ÉÄÜÔÚ¿ª·¢Ò»¸ö±ØÒª´¦ÖÃËÁÒâÀàÐÍÊý¾ÝµÄ¸ß¼¶¿ò¼Üʱ £¬ÒÀÀµstd::anyÀ´ÊµÏֽýݵĶ¯Ì¬ÀàÐÍ´¦Öá£

ÕâЩÏÖʵÀûÓÃÖеÄË÷ÇóºÍʵ¼Ê £¬ÊÇ17c++ÐÔÃüÁ¦µÄ×îÖ±½ÓÌåÏÖ¡£Ã¿Ò»¸öbugµÄ·¢ÏÖ £¬Ã¿Ò»¸ö»úÄÜÆ¿¾±µÄÓÅ»¯ £¬Ã¿Ò»´Î?ÐÂÏÊÓ÷¨µÄ´´Ôì £¬¶¼½øÒ»²½·á˶ÁË17c++µÄÄÚº­ £¬Ò²Îª½«À´µÄ˵»°·¢Õ¹ÌṩÁ˹óÖØµÄ¾­ÑéºÍ·´À¡¡£ÄÇЩÔÚÏîĿһÏß½â¾öÏÖʵÎÊÌâµÄ¿ª·¢Õß £¬ËûÃÇÊÇ17c++×îÖØ´óµÄ¡°¹±Ï×Õß¡±ÈºÌå £¬ËûÃǵľ­ÑéºÍÐèÒª £¬Í¬ÑùÊÇÍÆ¶¯c++˵»°½øÈ¡µÄ³ÁÒª¶¯Á¦¡£

¡°17c++²¢·ÇÒ»ÈËÖ®±Ê¡±»¹Òâζ×Å £¬c++˵»°µÄÍÆ¹ã¡¢½ÌÓýºÍÉçÇø½¨Éè £¬Ò²ÊÇÓÉÎÞÊýÈ˹²Í¬ÊµÏֵġ£ÓÐÄÇЩ×Î×β»¾ëµØ±àдc++½Ì³Ì¡¢²©¿Í¡¢Êé¼®µÄ×÷Õß £¬ËûÃÇÓÃÇ峺µÄ˵»°ºÍ»îÆÃµÄÀý×Ó £¬½«17c++µÄ¸´ÔÓ¸ÅÏëÚ¹Ê͸øÈëÃÅÕß £»ÓÐÄÇЩÔÚ¼¼ÊõÂÛ̳¡¢StackOverflowÉÏÄÍÐĽâ´ðËûÈËÒÉÄѵÄ×ÊÉ·¢Õß £¬ËûÃÇÓÃ×Ô¼ºµÄ¾­ÑéÔ®ÊÖËûÈ˽â¾ö±à³ÌÄÑÌâ £»ÓÐÄÇЩ×éÖ¯c++ÍÅÔ²¡¢¼¼Êõ»áÒéµÄ»î¶¯¼Ò £¬ËûÃǴÁËÒ»¸ö¸ö»¥»»ºÍ½ø½¨µÄƽ̨¡£

ÉõÖÁ £¬ÄÇЩ¸Ä½øc++±àÒëÆ÷£¨ÈçGCC¡¢Clang¡¢MSVC£©µÄ¹¤³ÌʦÃÇ £¬Ò²ÔÚ½«17c++µÄ?¹æ·¶×ª»¯Îª¿ÉÖ´ÐеĴúÂë¡£ËûÃǵŤ×÷ £¬Ö±½ÓÓ°Ïì×Å17c++µÄʵÏÖÖÊÁ¿¡¢»úÄܲû·¢ÒÔ¼°¿ª·¢ÕßÂÄÀú¡£Ò»¸öÓÅÁ¼µÄ±à?ÒëÆ÷ £¬¿ÉÄܸüºÃµØÖ§³Ö17c++µÄиöÐÔ £¬²¢Ìṩ¸ü¶ØÄÀµÄÃýÎóÐÅÏ¢ £¬Õâ¶ÔÓÚÍÆ¹ãºÍ±é¼°17c++ÖÁ¹Ø³ÁÒª¡£

¸ü½øÒ»²½ £¬17c++×÷Ϊһ¸öÕûÌå £¬ËüËùÔ̺¬µÄÕÜѧºÍÉè¼ÆË¼Ïë £¬Ò²ÔÚÇ±ÒÆÄ¬»¯µØÓ°Ïì×ÅÆäËû±à³Ì˵»°ºÍÈí¼þÉè¼Æ·¶Ê½¡£c++ÉçÇøµÄÊ¢¿ª¡¢ºÏ×÷ºÍ³ÖÐø´´ÐµÄÐÄÁé £¬Ò²¼¤Àø×ÅÆäËû¼¼ÊõÉçÇø²»ÐݽøÈ¡¡£

µ±ÎÒÃÇ¿´µ½Ò»Ð©Ðµıà³Ì˵»°ÔÚÉè¼ÆÊ± £¬½è¼øÁËc++ÔÚÄ£°å?¡¢·ºÐͱà³Ì¡¢RAII£¨ResourceAcquisitionIsInitialization£©µÈ·½ÃæµÄ˼Ïë £¬»òÕßÔÚ¿âÉè¼ÆÉÏÌṩÁËÀàËÆstd::optional¡¢std::variantµÄ³éÏó £¬ÕâÆäÖÐ £¬Ò²Ô̺¬ÁË17c++¼°Æä±³ºóÖØ´óÉçÇøµÄ¡°»ØÏ족¡£

Òò¶ø £¬¡°17c++²¢·ÇÒ»ÈËÖ®±Ê¡¹Øâ¾ä»° £¬ÊǶÔÒ»Öָ߶ȺÏ×÷¡¢¸ß¶ÈÉçȺ»¯µÄ¼¼ÊõÑݽøÄ£Ê½µÄÔÞËÌ¡£ËüÌáÐÑÎÒÃÇ £¬ÈκÎÒ»Ïîΰ´óµÄ¼¼Êõ³É¾Í £¬¶¼²»ÊǹÂÁ¢µÄÊÂÒµ £¬¶øÊÇÎÞÊý¸ö±ðÖǻۺͼ¯ÌåÖÂÁ¦µÄ½á¾§¡£17c++µÄÿһ¸ö¸öÐÔ £¬¶¼³ÐÔØ×ÅһȺÈ˵ÄÐÄѪ £»17c++µÄÿһ´ÎÀûÓà £¬¶¼¼¤µ´×ÅÉçÇøµÄ»îÁ¦ £»17c++µÄÿһ¸ö½«À´ £¬¶¼Éú³¤×Ÿü¿í·ºµÄ¹±Ïס£

ÎÒÃÇËùʹÓõÄ £¬²»½ö½öÊÇ˵»°µÄÓï·¨ºÍ¸öÐÔ £¬¸üÊÇÕâ¸öÓÉÎÞÊý¿ª·¢Õß¹²Í¬¹¹½¨¡¢²»ÐÝ·á˶ºÍÉî¿ÌÑݽøµÄ¾Þ´óÉú̬¡£ÕâÊÇÒ»ÖÖ´«³Ð £¬Ò²ÊÇÒ»ÖÖ¹²´´ £¬¶øÎÒÃÇÿÓ×ÎÒ £¬¶¼¿ÉËùÒÔÕâ¸ö½Ü³ö¹ÊʵÄÒ»²¿ÃÅ¡£

ÔðÈαà×룺 ÅËÃÀÁá
ÉêÃ÷£ºÖ¤È¯Ê±±¨Á¦ÇóÐÅÏ¢ÕæÊµ¡¢ÕýÈ· £¬ÎÄÕÂÌá¼°ÄÚÈݽö¹©²Î¿¼ £¬²»×é³ÉÄÚÈÝÐÔͶ×ʽ¨Òé £¬¾Ý´Ë²Ù·ç¸ñÏÕ×Ôµ£
ÏÂÔØ¡°Ö¤È¯Ê±±¨¡±¹Ù·½APP £¬»ò¹Ø×¢¹Ù·½Î¢ÐŹ«¼ÒºÅ £¬¼´¿ÉËæÊ±Ïàʶ¹ÉÊж¯Ì¬ £¬¶´²ìÕþ²ßÐÅÏ¢ £¬°ÑÎղƸ»»úÓö¡£
ÍøÓÑÆÀÂÛ
µÇ¼ºóÄܹ»½²»°
·¢ËÍ
ÍøÓÑÆÀÂÛ½ö¹©Æä±í°×Ó×ÎÒ¼û½â £¬²¢²»Åúע֤ȯʱ±¨Ì¬¶È
ÔÝÎÞÆÀÂÛ
ΪÄãÍÆ¼ö
ËïÓÀ²ÅÓë°Ù?É«ÊÐί¸±Êé¼Ç¡¢Êг¤ÍõÓÀ³¬×ù̸»¥»»
¡¾ÍøÕ¾µØÍ¼¡¿