C ++ 20 מקבל אישור טכני סופי

לאחר קבלת האישור הטכני הסופי מ- ISO ב -4 בספטמבר, C ++ 20 צפוי להתפרסם רשמית לקראת סוף השנה הזו, תוך הצגת תכונות חדשות כגון מודולים וקוריוטינים.

תוכנן בשנת 1979 לתכנות מערכות, C ++ נותרה שפה חיונית. C ++ אף נמצאה כשפה הצומחת ביותר במדד Tiobe בספטמבר 2020, שם היא מדורגת במקום הרביעי אחרי C, Java ו- Python. Tiobe מצטט את מפרט C ++ 20 כאחד הגורמים שנותנים דחיפה לשפה.

יכולות חדשות ב- C ++ 20 כוללות:

  • מודולים, המאפשרים למתכנתים להשתמש ברכיבים מודולריים.
  • מושגים, המשמשים לציון דרישות תבנית ותמיכה בתכנות כללי. מושגים מבטיחים לשפר את איכות הקוד.
  • ספריית סינכרון, לתמיכה טובה יותר בבקרת חומרה משובחת.
  • שיפורי חישוב בזמן הידור.
  • קורוטינים, המכלילים את תת-הדרכים לשימוש במשימות רב-משימות לא מקדימות. תמיכה סטנדרטית ב coroutines בספרייה הסטנדרטית עדיין חסרה. תמיכה זו נועדה ל- C ++ 23.
  • טווחים, המספקים רכיבים להתמודדות עם טווחי אלמנטים.
  • מאקרו לבדיקת תכונות, קבוצה של פקודות מאקרו המתאימות לתכונות שפה וספריה מ- C ++ 11 ואילך.
  • ערכי חשיש מחושבים מראש בחיפוש.
  • הצהרות הרחבה כדי לאפשר חזרה של קומפילציה של משפט לכל רכיב של טופל, מערך, מחלקה, חבילת פרמטרים או טווח.
  • פעולות מונאדיות עבור std::optionalcode.
  • יצירה מרומזת של אובייקטים לצורך מניפולציה ברמה נמוכה.
  • תלויית קשר שיפור הכרה importו moduleלכלים שאינו מהדר סיוע לקבוע תלות לבנה.
  • אלגוריתמים חדשים ומגוונים.

הוסרה יכולת חוזים שהייתה צפויה ב- C ++ 20, לציין תנאים מוקדמים, אחרי תנאים וקביעות. כעת חוזים מסומנים כפריט C ++ 23, אם כי ייתכן שגם לא יגיעו למהדורה זו.