C++20
C++20 هي نسخة من معيار ISO / IEC 14882 للغة البرمجة C++ . حلت C++20 محل النسخة السابقة من معيار C++، المسماة C++17 ، والتي حلت محلها لاحقًا C++23 . [ 1 ] تم وضع الصيغة النهائية للمعيار [ 2 ] من قبل فريق العمل WG21 في اجتماع براغ في فبراير 2020، [ 3 ] وأُعلن عن مسودته النهائية في مارس 2020، [ 4 ] وتمت الموافقة عليه في 4 سبتمبر 2020، [ 5 ] [ 6 ] ونُشر تحت اسم ISO/IEC 14882:2020 في ديسمبر 2020. [ 7 ]
سمات
يُضيف C++20 ميزات رئيسية جديدة أكثر من C++14 أو C++17 . [ 8 ] تشمل التغييرات التي تم قبولها في C++20 ما يلي: [ 9 ]
لغة
- المفاهيم ، [ 10 ] مع بناء جملة موجز [ 11 ]
- الوحدات [ 12 ]
- المُهيئات المُخصصة [ 13 ] (استنادًا إلى ميزة C99 ، وامتداد g++ الشائع )
[=, this]كعملية التقاط لامدا [ 14 ]- قوائم معلمات القوالب على الدوال اللامدا [ 15 ]
- مقارنة ثلاثية باستخدام "مشغل المركبة الفضائية"،
operator<=> - تهيئة متغير إضافي ضمن
forعبارة قائمة على النطاق [ 16 ] - لامدا في سياقات غير مقيمة [ 17 ] [ 18 ]
- الدوال اللامدا الافتراضية القابلة للإنشاء والتخصيص عديمة الحالة [ 17 ] [ 19 ]
- السماح بتوسيع الحزم في عملية التقاط التهيئة في لامدا [ 17 ] [ 20 ]
- أنواع الفئات في معلمات القوالب غير النوعية، مما يسمح أيضًا باستخدام السلاسل النصية كمعلمات قوالب [ 21 ]
- إزالة الحاجة إلى اسم النوع في ظروف معينة [ 22 ]
- السمات القياسية الجديدة ، [ 23 ] و [ 24 ]
[[no_unique_address]][[likely]][[unlikely]] - مشروط
explicit، مما يسمحexplicitللمعدِّل بأن يكون مشروطًا بتعبير منطقي [ 25 ] - تعبير constexpr الموسع : الدوال الافتراضية، [ 26 ] ، [ 27 ] و ، [ 28 ] و ، [ 29 ] [ 30 ]
uniontrycatchdynamic_casttypeidstd::pointer_traits - الدوال الفورية باستخدام
constevalالكلمة المفتاحية الجديدة [ 31 ] - يتم الآن تعريف الأعداد الصحيحة الموقعة على أنها ممثلة باستخدام المتمم الثنائي (يظل تجاوز الأعداد الصحيحة الموقعة سلوكًا غير محدد ) [ 32 ]
- نموذج ذاكرة منقح [ 33 ]
- تحسينات متنوعة للروابط المنظمة (التفاعل مع عمليات التقاط لامدا،
staticومدةthread_localالتخزين) [ 34 ] [ 35 ] - الروتينات الفرعية [ 36 ]
usingعلى نطاقenums [ 37 ]constinitالكلمة المفتاحية [ 38 ]
مكتبة
- النطاقات (مقترح النطاقات الواحد) [ 39 ]
std::make_sharedوبالنسبةstd::allocate_sharedللمصفوفات [ 40 ]- المؤشرات الذكية الذرية (مثل
std::atomic<shared_ptr<T>>وstd::atomic<weak_ptr<T>>) [ 41 ] std::to_addressلتحويل مؤشر إلى مؤشر خام [ 42 ]- إضافات التقويم والمنطقة الزمنية إلى
<chrono>[ 43 ] std::span، مما يوفر عرضًا لمصفوفة متجاورة (مماثلة للتسلسل المشار إليهstd::string_viewولكن يمكنها تغييره) [ 44 ]spanstd::eraseوstd::erase_if، تبسيط عملية مسح العناصر لمعظم الحاويات القياسية [ 45 ]<version>رأس [ 46 ] ، توفير وحدات ماكرو لاختبار الميزات [ 47 ]std::bit_cast<>لتحويل أنواع تمثيلات الكائنات، مع قدر أقل من الإسهابmemcpy()وقدرة أكبر على استغلال التفاصيل الداخلية للمترجم [ 48 ]constexprأجزاء مكتبة متنوعة [ 49 ]- إنشاء مؤشر ذكي مع تهيئة افتراضية [ 50 ]
contains()- طريقة للحاويات الترابطية [ 51 ]- التحقق من البادئات واللواحق للسلاسل النصية [ 52 ]
- عمليات البت، مثل العد الصفري/الواحد البادئ/اللاحق، [ 53 ] وعمليات log2 [ 54 ] [ 55 ] [ 56 ]
std::bind_front[ 57 ]std::atomic::waitتمت إضافة ،std::atomic::notify_one، ، مماstd::atomic::notify_allأعطى المكتبة القياسية قدرات تشبه futex [ 58 ]
الكلمات المفتاحية الجديدة والمعدلة
تمت إضافة ثماني كلمات مفتاحية جديدة (بالإضافة إلى عامل "المركبة الفضائية" الجديد ) ، operator<=>مثل concept[ 38 ] ، (بالإضافة إلى إعادة تقديم الكلمة المفتاحية)، و (لدعم UTF-8 )؛ من بين الكلمات الثماني الجديدة، هذه الثلاث ، و ، و مخصصة فقط لدعم الروتينات الفرعية الجديدة [ 59 ] (بالإضافة إلى ذلك، تم تغيير ست كلمات مفتاحية موجودة مسبقًا أو إضافة معانٍ جديدة لها)؛ يمكن أن تأخذ تعبيرًا منذ C++20. [ 60 ] تم إهمال معظم استخدامات الكلمة المفتاحية. [ 61 ]constinitconstevalrequiresexportchar8_tco_awaitco_returnco_yieldexplicitvolatile
بالإضافة إلى الكلمات الرئيسية، هناك معرّفات ذات معنى خاص (تُعتبر كلمات رئيسية في سياقات معينة)، بما في ذلك "جديد" importو module".
السمات الجديدة في C++20: ، و [ 62 ][[likely]][[unlikely]][[no_unique_address]]
تمت إزالته وإهماله
الميزات التي تمت إزالتها: [ 63 ]
- تمت إزالة ملفات الرأس المشتقة من لغة C
<ccomplex>، حيث لا فائدة منها في لغة C++. (تبقى ملفات الرأس المقابلة ، من أجل التوافق مع لغة C)<ciso646>.<cstdalign><cstdbool><ctgmath><*.h> throwتم حذف استخدام العبارات.- تمت إزالة بعض ميزات المكتبة التي تم إيقاف استخدامها سابقًا، بما في ذلك
std::uncaught_exception،std::raw_storage_iterator،std::is_literal_type،std::is_literal_type_v،std::result_ofوstd::result_of_t.
الميزات المهملة:
نُشرت كمواصفات فنية
تم تأجيله إلى معيار لاحق
- العقود – تم تشكيل مجموعة دراسة جديدة (SG21) للعمل على اقتراح جديد [ 68 ]
- التأمل [ 69 ] [ 70 ]
- الفئات الوصفية [ 71 ]
- المنفذون [ 72 ]
- امتدادات الشبكات، [ 73 ] [ 74 ] بما في ذلك غير المتزامن، وخدمات الإدخال/الإخراج الأساسية، والمؤقتات، والمخازن المؤقتة، وتدفقات البيانات الموجهة نحو المخازن المؤقتة، والمآخذ، وبروتوكولات الإنترنت (التي يتم حظرها بواسطة المنفذين).
- الخصائص [ 75 ]
- العقود الآجلة الممتدة [ 76 ]
دعم المُترجم
دعم كامل
توفر المترجمات التالية دعمًا كاملاً: [ 77 ]
- يدعم Visual Studio 2019
/std:c++latestجميع ميزات C++20 من خلال خياره، بدءًا من الإصدار 16.10.0. [ 78 ] تمت إضافة خيار/std:c++20لتمكين وضع C++20 في الإصدار 16.11.0. [ 79 ] [ 80 ]
لا يدعم مُصرّف مايكروسوفت نظام التشغيل ويندوز فحسب، بل يدعم أيضًا أنظمة لينكس وأندرويد وآي أو إس. ومع ذلك، يتطلب تطوير البرامج على نظام لينكس إضافة "Visual C++ for Linux Development". [ 81 ]
جزئي
- يدعم Clang جزئيًا لغة C++20، ويمكن تفعيل هذا الدعم باستخدام الخيار
-std=c++20(الإصدار 10 والإصدارات الأحدث) أو-std=c++2a(الإصدار 9 والإصدارات الأقدم). [ 82 ] - بدأت EDG بتطبيق ميزات C++20 في الإصدار 5.0، ومنذ الإصدار 6.1 تدعم معظم ميزات لغة C++20 الأساسية. [ 83 ]
- أضاف مُجمِّع الحزم GCC دعمًا تجريبيًا جزئيًا للغة C++20 في عام 2017 [ 84 ] في الإصدار 8 من خلال الخيار
-std=c++2a. ومثل Clang، استبدل GCC هذا الخيار بخيار آخر-std=c++20في الإصدار 10. كما يتضمن خيارًا لتمكين امتدادات GNU بالإضافة إلى دعم C++20 التجريبي-std=gnu++20. [ 85 ]
تاريخ
تشمل التغييرات التي تم تطبيقها على مسودة العمل C++20 في يوليو 2017 (تورنتو) ما يلي: [ 86 ]
- المفاهيم (ما تم إدراجه في المعيار هو نسخة مختصرة؛ ويوصف أيضًا بأنه "مفاهيم لايت" [ 87 ] )
- المُهيئات المُخصصة
[=, this]كعملية التقاط لامدا- قوائم معلمات القوالب في الدوال اللامدا
std::make_sharedوبالنسبةstd::allocate_sharedللمصفوفات
تشمل التغييرات التي تم تطبيقها على مسودة العمل C++20 في اجتماع الخريف في نوفمبر 2017 (ألبوكيرك) ما يلي: [ 88 ] [ 89 ]
- مقارنة ثلاثية باستخدام "مشغل المركبة الفضائية"،
operator <=> - تهيئة متغير إضافي ضمن
forعبارة قائمة على النطاق - الدوال اللامدا في سياقات غير مُقَيَّمة
- دوال لامدا عديمة الحالة قابلة للإنشاء والتخصيص بشكل افتراضي
- السماح بتوسيع الحزم في عملية بدء التقاط لامدا
- السلاسل النصية كمعلمات للقوالب
- المؤشرات الذكية الذرية (مثل
std::atomic<shared_ptr<T>>وstd::atomic<weak_ptr<T>>) std::to_addressلتحويل مؤشر إلى مؤشر خام
تشمل التغييرات التي تم تطبيقها على مسودة العمل C++20 في مارس 2018 (جاكسونفيل) ما يلي: [ 90 ]
- إزالة الحاجة إلى ذلك
typenameفي ظروف معينة - سمات قياسية جديدة ، و
[[no_unique_address]][[likely]][[unlikely]] - إضافات التقويم والمنطقة الزمنية إلى
<chrono> std::span، مما يوفر عرضًا لمصفوفة متجاورة (مماثلة للتسلسل المشار إليهstd::string_viewولكن يمكنها تغييره)span<version>رأس الصفحة
تشمل التغييرات التي تم تطبيقها على مسودة العمل C++20 في الاجتماع الصيفي في يونيو 2018 (رابرسويل) ما يلي: [ 91 ]
العقود( تم تأجيلها لاحقًا إلى معيار لاحق ؛ تمت إضافتها في C++26 ) [ 92 ]- وحدات ماكرو لاختبار الميزات
- تحويل تمثيلات الكائنات إلى بتات، مع إسهاب أقل
memcpy()وقدرة أكبر على استغلال تفاصيل المُصرّف الداخلية - مشروط
explicit، مما يسمح للمعدِّل الصريح بأن يكون مشروطًا بتعبير منطقي - constexpr الدوال الافتراضية
تشمل التغييرات التي تم تطبيقها على مسودة العمل C++20 في اجتماع الخريف في نوفمبر 2018 (سان دييغو) ما يلي: [ 93 ]
- نطاقات (مقترح النطاقات الواحد)
- مفهوم بناء جملة موجز
constexprunion،tryوcatch، و .dynamic_casttypeidstd::pointer_traitsconstexprأجزاء مكتبة متنوعة- الدوال الفورية باستخدام
constevalالكلمة المفتاحية new - يتم الآن تعريف الأعداد الصحيحة الموقعة بحيث يتم تمثيلها باستخدام نظام المتمم الثنائي (يظل تجاوز سعة الأعداد الصحيحة الموقعة سلوكًا غير محدد ).
تحسينات على مرفق العقود (التحكم في الوصول في شروط العقد)[ 94 ] (انظر قائمة الميزات المؤجلة إلى معيار لاحق )- نموذج ذاكرة منقح
- إنشاء مؤشر ذكي مع تهيئة افتراضية
تشمل التغييرات التي تم تطبيقها على مسودة العمل C++20 في الاجتماع الشتوي في فبراير 2019 (كونا) ما يلي: [ 95 ] [ 96 ] [ 97 ]
- الروتينات الفرعية
- الوحدات
- تحسينات متنوعة على الروابط المنظمة (التفاعل مع عمليات التقاط لامدا،
staticومدةthread_localالتخزين)
تشمل التغييرات التي تم تطبيقها على مسودة العمل C++20 في الاجتماع الصيفي في يوليو 2019 (كولونيا) ما يلي: [ 98 ] [ 99 ] [ 100 ] [ 101 ]
- تمت إزالة العقود (انظر قائمة الميزات المؤجلة إلى معيار لاحق ) [ 102 ]
- تم إهمال استخدام عامل الفاصلة في التعبيرات الفرعية [ 64 ]
constexprإضافات (تهيئة افتراضية بسيطة، [ 103 ] تجميع مضمن غير مُقيَّم [ 104 ] )- باستخدام النطاق
enums [ 37 ] - تغييرات متنوعة على مشغل المركبة الفضائية [ 105 ] [ 106 ]
- DR: تغييرات طفيفة على الوحدات [ 107 ]
constinitالكلمة المفتاحية- تغييرات في المفاهيم (إزالة
-> Typeمتطلبات نوع الإرجاع [ 108 ] ) - (معظم)
volatileتم إهماله [ 61 ] - DR: التأثيرات على المُنشئات [ 109 ]
[[nodiscard]] - لن تستخدم مفاهيم المكتبة القياسية الجديدة PascalCase (بل snake_case ، كما هو الحال في بقية المكتبة القياسية) [ 110 ]
- تنسيق النص (
std::formatاستنادًا إلى تلك الخاصة بمكتبة {fmt} [ 111 ] [ 112 ]chronoالتكامل، [ 113 ] إصلاحات الحالات الشاذة [ 114 ] ) - عمليات البت [ 53 ]
constexprاستدعاء الأدوات المساعدة [ 115 ]- الثوابت الرياضية [ 116 ]
- إضافات الاتساق إلى الذرات (
std::atomic_ref<T>، [ 58 ]std::atomic<std::shared_ptr<T>>[ 117 ] ) - أضف
<=>المعامل إلى المكتبة القياسية [ 118 ] - وحدات رأسية للمكتبة القياسية [ 119 ]
- مرافق التزامن [ 120 ] (مدمجة من: الانتظار الذري الفعال والإشارات، [ 121 ] المزالج والحواجز، [ 122 ] التحسين
atomic_flag، [ 123 ] لا تجعل لغة C++ غير قابلة للتنفيذ على وحدات المعالجة المركزية الصغيرة [ 124 ] ) std::source_location[ 125 ]constexprالحاويات (std::string، [ 126 ]std::vector[ 127 ] )std::stop_tokenوربط الخيط (std::jthread) [ 128 ]
تشمل التغييرات التي تم تطبيقها خلال قرار التعليق على NB في اجتماع الخريف في نوفمبر 2019 (بلفاست) ما يلي: [ 129 ] [ 130 ] [ 131 ] [ 132 ]
- أنواع الفئات في معلمات القوالب غير النوعية (NTTP): تم إزالة قيد عدم
operator==السماح بالتعريفات التي يحددها المستخدم، حيث تم فصل معنى مساواة وسيط القالب عنoperator==. [ 133 ] وهذا يسمح أيضًا بأعضاء المصفوفة في NTTP من نوع الفئة. - أنواع الفاصلة العائمة، [ 134 ] المؤشرات والمراجع والاتحادات والفئات الشبيهة بالاتحادات (أنواع الفئات التي تحتوي على اتحادات مجهولة) مسموح بها الآن كـ NTTP.
- تشمل هوية الوظيفة الآن أيضًا عبارات الاستلزام اللاحقة (P1971)
- تمت إزالة الدوال غير القالبية المقيدة
<compare>وهو متوفر الآن في تطبيقات مستقلة [ 135 ]std::spanتم تغيير تعريف النوع s منindex_typeإلىsize_typeليكون متسقًا مع بقية المكتبة القياسية [ 136 ]- تمت إعادة تسمية سمات المفاهيم لتتماشى مع إعادة تسمية المفاهيم نتيجة لاجتماع كولونيا
- العديد من الإصلاحات والإضافات للنطاقات (P1456R1: طرق العرض للتحريك فقط، [ 137 ] P1391R4: مُنشئ النطاق لـ
std::string_view(منشئ من زوج من الأحرف المُكررة)، [ 138 ] P1394R4 : مُنشئ النطاق لـ ، [ 139 ] P1870R1: نطاق التوجيه <T> دقيق للغاية [ 140 ] )std::span<ref> - تم تغيير عملية التهيئة
std::atomic<T>لتتوافق مع التهيئة الافتراضية وتهيئة القوائم، [ 141 ]std::latchويمكنهاstd::barrierالآن الإبلاغ عن الحد الأقصى لعدد الخيوط التي يدعمها التنفيذ من خلال الدالة العضوية الجديدة.max() std::weak_equalityوقدstd::strong_equalityتمت إزالتها لأنها لم تعد مستخدمة- تم وضع الخوارزميات في
<numeric>constexpr - تمت إضافة وحدات الماكرو لاختبار الميزات المفقودة للميزات الجديدة أو المتغيرة في C++20 [ 142 ]
مراجع
- ↑ "المعيار" . isocpp.org . مؤرشف من الأصل في 19 سبتمبر 2020. تم الاطلاع عليه في 7 سبتمبر 2020 .
- ↑ ساتر، هيرب (1 أكتوبر 2019). "P1000R3: جدول زمني لـ C++ IS" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 14 نوفمبر 2019. تم الاطلاع عليه بتاريخ 13 فبراير 2020 .
- ↑ دوسيكوفا، هانا (2019-11-06). "N4817: دعوة ومعلومات اجتماع براغ 2020" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 2019-12-29 . تم الاطلاع عليه بتاريخ 2020-02-13 .
- ↑ "تقرير المحررين N4859 - لغات البرمجة - C++" . مؤرشف من الأصل بتاريخ 2022-12-09 . تم الاطلاع عليه بتاريخ 2023-09-22 .
- ↑ "الوضع الحالي" . isocpp.org . مؤرشف من الأصل بتاريخ 8 سبتمبر 2020. تم الاطلاع عليه بتاريخ 7 سبتمبر 2020 .
- ↑ "موافقة C++20 - هيرب ساتر" . isocpp.org . مؤرشف من الأصل بتاريخ 11 سبتمبر 2020. تم الاطلاع عليه بتاريخ 8 سبتمبر 2020 .
- ↑ "ISO/IEC 14882:2020" . مؤرشف من الأصل بتاريخ 16 ديسمبر 2020. تم الاطلاع عليه بتاريخ 16 ديسمبر 2020 .
- ↑ "لماذا يُصدر معيار لغة C++ كل ثلاث سنوات؟" . ١٣ يوليو ٢٠١٩. مؤرشف من الأصل في ١٣ يوليو ٢٠١٩. تم الاطلاع عليه في ١٩ يوليو ٢٠١٩ .
- ↑ "P0592R0: اقتراح خطة شاملة لـ C++20" . مؤرشف من الأصل بتاريخ 2017-03-08 . تم الاطلاع عليه بتاريخ 2017-05-06 .
- ↑ "P0606R0: المفاهيم جاهزة" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 28-03-2017 . تم الاطلاع عليه بتاريخ 06-05-2017 .
- ↑ "P1141R1 - نهج آخر للتصريحات المقيدة" . مؤرشف من الأصل بتاريخ 11-11-2018 . تم الاطلاع عليه بتاريخ 11-11-2018 .
- ↑ "N4720: مسودة عمل، إضافات إلى لغة C++ للوحدات النمطية" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 30 أبريل 2019. تم الاطلاع عليه بتاريخ 30 أبريل 2019 .
- ↑ تيم شين؛ ريتشارد سميث. "صياغة التهيئة المحددة" . مؤرشف من الأصل بتاريخ 15-10-2017 . تم الاطلاع عليه بتاريخ 16-07-2017 .
- ↑ توماس كوب. "السماح بالتقاط لامدا [ =, this ] " . مؤرشف من الأصل في 2019-02-09 . تم الاسترجاع في 2017-07-16 .
- ↑ "صيغة القوالب المألوفة للدوال اللامدا العامة" . مؤرشف من الأصل بتاريخ 21-11-2018 . تم الاطلاع عليه بتاريخ 16-07-2017 .
- ↑ "عبارات for المستندة إلى النطاق مع مُهيئ" . مؤرشف من الأصل بتاريخ 2017-04-06 . تم الاسترجاع بتاريخ 2019-10-30 .
- ١ ٢ ٣ "تقرير رحلة: اجتماع معايير لغة C++ في ألبوكيرك، نوفمبر ٢٠١٧" . ها هو والدو! ٢٠١٧-١١-٢٠. مؤرشف من الأصل في ٢٠١٧-١٢-١١ . تم الاسترجاع في ٢٠١٧-١٢-١١ .
- ↑ "صياغة الدوال اللامدا في سياقات غير مُقَيَّمة" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 12-12-2017 . تم الاطلاع عليه بتاريخ 11-12-2017 .
- ↑ "الدوال اللامدا عديمة الحالة القابلة للإنشاء والتخصيص افتراضياً" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 12-12-2017 . تم الاطلاع عليه بتاريخ 11-12-2017 .
- ↑ "توسيع الحزمة في دالة لامدا init-capture" . www.open-std.org . مؤرشف من الأصل بتاريخ 14 فبراير 2020. تم الاطلاع عليه بتاريخ 11 ديسمبر 2017 .
- ↑ "أنواع الفئات في معلمات القوالب غير النوعية" (ملف PDF) . www.open-std.org . 2018-06-06. مؤرشف (ملف PDF) من الأصل بتاريخ 2022-02-05 . تم الاطلاع عليه بتاريخ 2022-02-18 .
- ↑ نينا رانز؛ دافيد فانديفورد. "فليسقط اسم النوع!" . مؤرشف من الأصل بتاريخ 22-04-2018 . تم الاطلاع عليه بتاريخ 18-05-2019 .
- ↑ "دعم اللغة للكائنات الفارغة" . مؤرشف من الأصل بتاريخ 17-04-2018 . تم الاطلاع عليه بتاريخ 04-08-2019 .
- ↑ "صياغة مقترحة للسمات المحتملة وغير المحتملة (مراجعة 5)" . مؤرشف من الأصل بتاريخ 13 مايو 2018. تم الاطلاع عليه بتاريخ 18 مايو 2019 .
- ↑ "explicit(bool)" . www.open-std.org . مؤرشف من الأصل بتاريخ 20 يوليو 2018. تم الاطلاع عليه بتاريخ 13 نوفمبر 2018 .
- ↑ "السماح باستدعاء الدوال الافتراضية في التعبيرات الثابتة" . www.open-std.org . مؤرشف من الأصل بتاريخ 11-06-2018 . تم الاطلاع عليه بتاريخ 11-03-2019 .
- ↑ "P1330R0 - تغيير العضو النشط في اتحاد داخل constexpr" . مؤرشف من الأصل بتاريخ 26-07-2019 . تم الاطلاع عليه بتاريخ 26-07-2019 .
- ↑ "P1002R0 - كتل try-catch في دوال constexpr" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 11-11-2018 . تم الاطلاع عليه بتاريخ 11-11-2018 .
- ↑ "P1327R0 - السماح بالتحويل الديناميكي، ومعرف النوع متعدد الأشكال في التعبيرات الثابتة" . مؤرشف من الأصل بتاريخ 2019-07-26 . تم الاطلاع عليه بتاريخ 2019-07-26 .
- ↑ "P1006R1 - Constexpr in std::pointer_traits" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 11-11-2018 . تم الاطلاع عليه بتاريخ 11-11-2018 .
- ↑ "P1073R2 - الوظائف الفورية" . مؤرشف من الأصل بتاريخ 26-10-2018 . تم الاطلاع عليه بتاريخ 11-11-2018 .
- ↑ "P1236R0: صياغة بديلة لـ P0907R4 الأعداد الصحيحة الموقعة هي المتمم الثنائي" . مؤرشف من الأصل بتاريخ 11-11-2018 . تم الاطلاع عليه بتاريخ 11-11-2018 .
- ↑ "P0668R4: مراجعة نموذج ذاكرة C++" . مؤرشف من الأصل بتاريخ 11-11-2018 . تم الاطلاع عليه بتاريخ 11-11-2018 .
- ↑ "P1091R1: توسيع الروابط المهيكلة لتكون أشبه بتصريحات المتغيرات" . www.open-std.org . مؤرشف من الأصل بتاريخ 26 يناير 2019. تم الاطلاع عليه بتاريخ 24 فبراير 2019 .
- ↑ "P1091R2: توسيع الروابط المهيكلة لتكون أشبه بتصريحات المتغيرات" . www.open-std.org . مؤرشف من الأصل بتاريخ 26 يناير 2019. تم الاطلاع عليه بتاريخ 24 فبراير 2019 .
- ↑ "N4649: مسودة عمل، مواصفات فنية لامتدادات C++ للروتينات الفرعية" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 16-05-2017 . تم الاطلاع عليه بتاريخ 06-05-2017 .
- 1 2 "P1099R5: استخدام التعداد" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاسترجاع في 2019-07-20 .
- 1 2 "P1143R2: إضافة الكلمة المفتاحية constinit" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاطلاع عليه في 2019-07-20 .
- ↑ "P0896R3" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 11-11-2018 . تم الاطلاع عليه بتاريخ 11-11-2018 .
- ↑ "توسيع وظيفة make_shared لدعم المصفوفات" . مؤرشف من الأصل بتاريخ 2017-09-06 . تم الاطلاع عليه بتاريخ 2020-02-12 .
- ↑ ميريديث، أليستير؛ ساتر، هيرب. "مراجعة atomic_shared_ptr للغة C++20" . اللجنة الفنية المشتركة 1/اللجنة الفرعية 22/مجموعة العمل 21 - لجنة معايير C++ - ISOCPP . المنظمة الدولية للمعايير . مؤرشف من الأصل في 4 يناير 2018. تم الاطلاع عليه في 27 ديسمبر 2018 .
- ↑ "أداة لتحويل مؤشر إلى مؤشر خام" . مؤرشف من الأصل بتاريخ 20 فبراير 2018. تم الاطلاع عليه بتاريخ 12 فبراير 2020 .
- ↑ هوارد إي. هينانت؛ توماش كامينسكي. "توسيع نطاق <chrono> ليشمل التقاويم والمناطق الزمنية" . مؤرشف من الأصل بتاريخ 13 مايو 2018. تم الاطلاع عليه بتاريخ 18 مايو 2019 .
- ↑ نيل ماكنتوش؛ ستيفان تي. لافافيج. "span: طرق عرض آمنة للحدود لتسلسلات الكائنات" . مؤرشف من الأصل بتاريخ 18-05-2019 . تم الاسترجاع بتاريخ 18-05-2019 .
- ↑ أليستير ميريديث؛ ستيفان ت. لافافيج (4 أكتوبر 2018). "اعتماد محو الحاويات المتسق من أساسيات المكتبة 2 للغة C++20" . مؤرشف من الأصل في 8 مارس 2021. تم الاطلاع عليه في 14 ديسمبر 2020 .
- ↑ آلان تالبوت. "<النسخة>" . مؤرشف من الأصل بتاريخ 18-05-2019 . تم الاطلاع عليه بتاريخ 18-05-2019 .
- ↑ "دمج وحدات اختبار الميزات في C++ WD (مراجعة 2)" . www.open-std.org . مؤرشف من الأصل بتاريخ 20 يوليو 2018. تم الاطلاع عليه بتاريخ 10 نوفمبر 2018 .
- ↑ "تمثيلات الكائنات عبر البث الثنائي" . www.open-std.org . مؤرشف من الأصل بتاريخ 18 أغسطس 2018. تم الاطلاع عليه بتاريخ 10 نوفمبر 2018 .
- ↑ "P1032R1 - بتات constexpr متنوعة" . مؤرشف من الأصل بتاريخ 26-10-2018 . تم الاطلاع عليه بتاريخ 11-11-2018 .
- ↑ "إنشاء مؤشر ذكي مع تهيئة افتراضية" . مؤرشف من الأصل بتاريخ 26 يناير 2019. تم الاطلاع عليه بتاريخ 12 فبراير 2020 .
- ↑ ميخائيل مالتسيف. "P0458R2: التحقق من وجود عنصر في حاويات ترابطية" . مؤرشف من الأصل بتاريخ 16 يناير 2022. تم الاطلاع عليه بتاريخ 2 يناير 2022 .
- ↑ ميخائيل مالتسيف. "P0457R2: التحقق من بادئة ولاحقة السلسلة النصية" . مؤرشف من الأصل بتاريخ 18-05-2022 . تم الاطلاع عليه بتاريخ 22-06-2025 .
- 1 2 "P0553R4: عمليات البت" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-07-20 . تم الاسترجاع في 2019-07-20 .
- ↑ "P0556R3: عمليات حسابية صحيحة على قوى العدد 2" . www.open-std.org . 2018-06-06. مؤرشف من الأصل في 2019-06-26 . تم الاطلاع عليه في 2020-08-08 .
- ↑ "P1355R2 كشف عقد ضيق لـ ceil2" . www.open-std.org . 11-06-2019. مؤرشف من الأصل في 05-08-2019 . تم الاسترجاع في 08-08-2020 .
- ↑ "حول أسماء وظائف معالجة البتات منخفضة المستوى" (ملف PDF) . www.open-std.org . ١١ فبراير ٢٠٢٠. مؤرشف (ملف PDF) من الأصل بتاريخ ٢٤ مارس ٢٠٢٠. تم الاطلاع عليه بتاريخ ٨ أغسطس ٢٠٢٠ .
- ↑ توماش كامينسكي (2017-11-09). "تطبيق دالة جزئية مبسط" . مؤرشف من الأصل بتاريخ 2020-09-28 . تم الاطلاع عليه بتاريخ 2020-11-08 .
- 1 2 "P1643R1: إضافة wait/notify إلى atomic_ref < T > " . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاسترجاع في 2019-07-20 .
- ↑ "كلمات مفتاحية في لغة C++ - cppreference.com" . en.cppreference.com . مؤرشف من الأصل بتاريخ 19-03-2012 . تم الاطلاع عليه بتاريخ 04-08-2019 .
- ↑ "محدد صريح - cppreference.com" . en.cppreference.com . مؤرشف من الأصل بتاريخ 21-02-2012 . تم الاطلاع عليه بتاريخ 04-08-2019 .
- 1 2 3 "P1152R4: إيقاف استخدام volatile" . www.open-std.org . 2019-07-20. مؤرشف من الأصل بتاريخ 2019-06-23 . تم الاطلاع عليه بتاريخ 2019-07-20 .
- ↑ "تسلسل مُحدِّدات السمات (منذ C++11) - cppreference.com" . en.cppreference.com . مؤرشف من الأصل بتاريخ 2012-07-05 . تم الاطلاع عليه بتاريخ 2019-08-04 .
- ↑ "مسودة عمل، معيار لغة البرمجة C++ (الملحق ج، القسم ج.1)" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 27 أبريل 2020. تم الاطلاع عليه بتاريخ 18 نوفمبر 2020 .
- 1 2 "P1161R2: إيقاف استخدام عامل الفاصلة في تعابير الفهرسة" . www.open-std.org . مؤرشف من الأصل بتاريخ 20 يوليو 2019. تم الاطلاع عليه بتاريخ 20 يوليو 2019 .
- ↑ "إضافات C++ للتوازي، الإصدار 2" . مؤرشف (PDF) من الأصل بتاريخ 21-09-2022 . تم الاطلاع عليه بتاريخ 09-07-2019 .
- ↑ "امتدادات C++ للانعكاس" . مؤرشف (PDF) من الأصل بتاريخ 21-09-2022 . تم الاطلاع عليه بتاريخ 09-07-2019 .
- ↑ "إضافات لغة C++ للشبكات" . مؤرشف (PDF) من الأصل بتاريخ 21-09-2022 . تم الاطلاع عليه بتاريخ 09-07-2019 .
- ↑ ساتر، هيرب (20 يوليو 2019). "تقرير رحلة: اجتماع معايير ISO C++ الصيفي (كولونيا)" . مطحنة ساتر . مؤرشف من الأصل في 17 أبريل 2020. تم الاطلاع عليه في 21 يوليو 2019 .
- ↑ "تأملات حول مقترحات التأمل - اجتماع C++" . meetingcpp.com . مؤرشف من الأصل بتاريخ 23-06-2017 . تم الاطلاع عليه بتاريخ 30-06-2017 .
- ↑ "الانعكاس الساكن" . www.open-std.org . مؤرشف من الأصل بتاريخ 22-02-2020 . تم الاطلاع عليه بتاريخ 10-11-2018 .
- ↑ هيرب ساتر . "الفئات الفوقية" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 11 نوفمبر 2020. تم الاطلاع عليه بتاريخ 23 يوليو 2017 .
- ↑ «اقتراح تنفيذ موحد للغة C++» . www.open-std.org . مؤرشف من الأصل بتاريخ 20 فبراير 2020. تم الاطلاع عليه بتاريخ 24 فبراير 2019 .
- ↑ "N4771: مسودة عمل، ملحقات C++ للشبكات" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 19 أبريل 2020. تم الاطلاع عليه بتاريخ 23 مارس 2019 .
- ↑ "ISO/IEC TS 19216:2018 لغات البرمجة - امتدادات C++ للشبكات" . مؤرشف من الأصل بتاريخ 15 يناير 2019. تم الاطلاع عليه بتاريخ 17 ديسمبر 2018 .
- ↑ "آلية عامة لتخصيص الخصائص" . www.open-std.org . مؤرشف من الأصل بتاريخ 19 يناير 2020. تم الاطلاع عليه بتاريخ 24 فبراير 2019 .
- ↑ "مقترح مستقبلي موحد للغة C++" . مؤرشف من الأصل بتاريخ 21-09-2022 . تم الاطلاع عليه بتاريخ 08-07-2019 .
- ↑ "دعم مُصرّف لغة C++ - cppreference.com" . en.cppreference.com . مؤرشف من الأصل بتاريخ 2022-08-08 . تم الاطلاع عليه بتاريخ 2022-08-12 .
- ↑ jawiddis. "ملاحظات إصدار Visual Studio 2019 الإصدار 16.10" . docs.microsoft.com . مؤرشف من الأصل بتاريخ 11 أغسطس 2021. تم الاطلاع عليه بتاريخ 13 يوليو 2021 .
- ↑ "MSVC C++20 ومفتاح /std:c++20" . docs.microsoft.com . 2 سبتمبر 2021. مؤرشف من الأصل في 6 سبتمبر 2021. تم الاطلاع عليه في 7 سبتمبر 2021 .
- ↑ وثائق Visual Studio للغة Microsoft C++ ، وثائق Microsoft، 19 أبريل 2022، مؤرشفة من الأصل في 19 أبريل 2022 ، تم استرجاعها في 19 أبريل 2022
- ↑ "توافق Visual Studio 2019" . docs.microsoft.com . مؤرشف من الأصل بتاريخ 2020-06-03 . تم الاطلاع عليه بتاريخ 2022-08-12 .
- ↑ "Clang - حالة لغة برمجة C++" . clang.llvm.org . مؤرشف من الأصل بتاريخ 2013-07-04 . تم الاطلاع عليه بتاريخ 2022-04-19 .
- ↑ "دعم مُصرّف لغة C++ - cppreference.com" . en.cppreference.com . مؤرشف من الأصل بتاريخ 3 أكتوبر 2020. تم الاطلاع عليه بتاريخ 10 أكتوبر 2020 .
- ↑ "أندرو ساتون - [ رقعة ] إضافة -std=c++2a" . gcc.gnu.org . مؤرشف من الأصل بتاريخ 2021-03-01 . تم الاطلاع عليه بتاريخ 2022-04-19 .
- ↑ "دعم معايير لغة C++ في GCC - مشروع GNU" . gcc.gnu.org . مؤرشف من الأصل بتاريخ 20 أبريل 2022. تم الاطلاع عليه بتاريخ 19 أبريل 2022 .
- ↑ هيرب ساتر (15 يوليو 2017). "تقرير رحلة: اجتماع معايير ISO C++ الصيفي (تورنتو)" . مؤرشف من الأصل بتاريخ 6 أغسطس 2017. تم الاطلاع عليه بتاريخ 16 يوليو 2017 .
- ↑ أندرو ساتون؛ بيارن ستروستروب (24 فبراير 2013). "مفاهيم مبسطة: تقييد القوالب باستخدام المسندات" . isocpp.org . مؤرشف من الأصل في 16 يناير 2021. تم الاطلاع عليه في 13 يناير 2021 .
- ↑ هيرب ساتر (11 نوفمبر 2017). "تقرير رحلة: اجتماع معايير ISO C++ الخريفي (ألبوكيرك)" . مؤرشف من الأصل في 13 فبراير 2019. تم الاطلاع عليه في 4 ديسمبر 2017 .
- ↑ سميث، ريتشارد؛ بيرتشيك، داون؛ كوب، توماس. "تقرير المحررين N4714 - لغات البرمجة - C++" . مسودات معايير C++ . جيت هاب . مؤرشف من الأصل في 21 سبتمبر 2022. تم الاطلاع عليه في 27 ديسمبر 2018 .
- ↑ بوتوند بالو (28 مارس 2018). "تقرير رحلة: اجتماع معايير لغة C++ في جاكسونفيل، مارس 2018" . مؤرشف من الأصل بتاريخ 18 مايو 2019. تم الاطلاع عليه بتاريخ 18 مايو 2019 .
- ↑ هيرب ساتر (2 يوليو 2018). "تقرير رحلة: اجتماع معايير ISO C++ الصيفي (رابرسويل)" . مؤرشف من الأصل بتاريخ 23 مايو 2020. تم الاطلاع عليه بتاريخ 10 نوفمبر 2018 .
- ↑ "دعم البرمجة التعاقدية في لغة C++" . www.open-std.org . مؤرشف من الأصل بتاريخ 15 يناير 2020. تم الاطلاع عليه بتاريخ 10 نوفمبر 2018 .
- ↑ اجتماع الخريف في نوفمبر 2018
- ↑ "P1289R0 - التحكم في الوصول في شروط العقد" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 11-11-2018 . تم الاطلاع عليه بتاريخ 11-11-2018 .
- ↑ اجتماع شتوي في فبراير 2019
- ↑ "r/cpp - تقرير رحلة لجنة ISO C++ إلى كونا في فبراير 2019 (اكتمل تصميم C++20؛ الوحدات النمطية في C++20؛ الروتينات الفرعية في C++20؛ نُشر الإصدار الأول من Reflection TS؛ بدأ العمل على تقرير فني لنظام C++ البيئي)" . reddit . 23 فبراير 2019. مؤرشف من الأصل في 23 فبراير 2019. تم الاطلاع عليه في 24 فبراير 2019 .
- ↑ "تقرير رحلة: اجتماع معايير ISO C++ الشتوي (كونا)" . ساتر ميل . 23 فبراير 2019. مؤرشف من الأصل في 24 فبراير 2019. تم الاطلاع عليه في 24 فبراير 2019 .
- ↑ "دعوة ومعلومات اجتماع كولونيا 2019" (ملف PDF) .
- ↑ "r/cpp - تقرير رحلة لجنة ISO C++ إلى كولونيا، يوليو 2019 — 🚀 هبط نسر C++20 🚀 (تم شحن مسودة لجنة C++20؛ نُقلت العقود من C++20 إلى مجموعة دراسة؛ 'std::format' في C++20؛ مكتبة مزامنة C++20)" . reddit . 20 يوليو 2019. مؤرشف من الأصل في 20 أبريل 2020. تم الاسترجاع في 15 سبتمبر 2019 .
- ↑ بوتوند بالو (26 يوليو 2019). "تقرير رحلة: اجتماع معايير لغة C++ في كولونيا، يوليو 2019" . مؤرشف من الأصل بتاريخ 26 فبراير 2020. تم الاطلاع عليه بتاريخ 5 أغسطس 2019 .
- ↑ ساتر، هيرب (20 يوليو 2019). "تقرير رحلة: اجتماع معايير ISO C++ الصيفي (كولونيا)" . مؤرشف من الأصل بتاريخ 17 أبريل 2020. تم الاطلاع عليه بتاريخ 21 يوليو 2019 .
- ↑ جوسوتيس، نيكولاي. "P1823R0: إزالة العقود من C++20" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 13 أغسطس 2020. تم الاطلاع عليه بتاريخ 20 أغسطس 2019 .
- ↑ "السماح بالتهيئة الافتراضية البسيطة في سياقات constexpr" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 19-10-2020 . تم الاطلاع عليه بتاريخ 20-07-2019 .
- ↑ "P1668R1: تمكين الدوال المضمنة في Constexpr من خلال السماح باستخدام inline-asm غير المُقيَّم في دوال Constexpr" . www.open-std.org . مؤرشف من الأصل بتاريخ 19 يناير 2020. تم الاطلاع عليه بتاريخ 20 يوليو 2019 .
- ↑ "P1186R3: متى تستخدم <=> فعليًا؟" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاطلاع عليه في 2019-07-20 .
- ↑ "P1630R1: المركبة الفضائية بحاجة إلى صيانة" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاطلاع عليه في 2019-07-20 .
- ↑ "P1766R1: التخفيف من مشاكل الوحدات النمطية البسيطة" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاطلاع عليه في 2019-07-20 .
- ↑ "P1452R2: حول الدلالات غير الموحدة لمتطلبات نوع الإرجاع" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاطلاع عليه في 2019-07-20 .
- ↑ "P1771R1: nodiscard for constructors" (ملف PDF) . www.open-std.org . 2019-07-20. مؤرشف (PDF) من الأصل بتاريخ 2022-09-21 . تم الاطلاع عليه بتاريخ 2019-07-20 .
- ↑ "P1754R1: إعادة تسمية المفاهيم إلى standard_case في C++20، ما دام ذلك ممكنًا" (ملف PDF) . www.open-std.org . 2019-07-20. مؤرشف (PDF) من الأصل بتاريخ 2019-08-20 . تم الاطلاع عليه بتاريخ 2019-07-20 .
- ↑ "P0645R10: تنسيق النصوص" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاطلاع عليه في 2019-07-20 .
- ↑ "std::format في C++20" . www.zverovich.net . 23 يوليو 2019. مؤرشف من الأصل في 23 يوليو 2019. تم الاطلاع عليه في 15 سبتمبر 2019 .
- ↑ "P1361R2: دمج وظيفة التوقيت مع تنسيق النصوص" (ملف PDF) . www.open-std.org . 2019-07-20. مؤرشف (PDF) من النسخة الأصلية بتاريخ 2019-08-20 . تم الاطلاع عليه بتاريخ 2019-07-20 .
- ↑ "P1652R1: حالات خاصة في دالة printf ضمن std::format" . www.open-std.org . 2019-07-20. مؤرشف من الأصل بتاريخ 2019-08-20 . تم الاطلاع عليه بتاريخ 2019-07-20 .
- ↑ "P1965R2: constexpr INVOKE" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاطلاع عليه في 2019-07-20 .
- ↑ "P0631R8: الثوابت الرياضية" (ملف PDF) . www.open-std.org . 2019-07-20. مؤرشف (PDF) من الأصل بتاريخ 2019-08-20 . تم الاطلاع عليه بتاريخ 2019-07-20 .
- ↑ "P1664R0: إضافة wait/notify إلى atomic<shared_ptr < T > >" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2021-11-05 . تم الاسترجاع في 2019-07-20 .
- ↑ "P1614R2: هبوط السفينة الأم - إضافة <=> إلى المكتبة" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاسترجاع في 2019-07-20 .
- ↑ "P1502R1: وحدات رأس المكتبة القياسية للغة C++20" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاطلاع عليه في 2019-07-20 .
- ↑ "P1135R6: مكتبة التزامن C++20" . www.open-std.org . 2019-07-20. مؤرشف من الأصل في 2019-08-20 . تم الاطلاع عليه في 2019-07-20 .
- ↑ "P0514R4: انتظار متزامن فعال للغة C++20" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 18 أغسطس 2018. تم الاطلاع عليه بتاريخ 20 يوليو 2019 .
- ↑ "P0666R2: Revised Latches and Barriers for C++20" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 18-08-2018 . تم الاطلاع عليه بتاريخ 20-07-2019 .
- ↑ "P0995R1: تحسين atomic_flag" . مؤرشف من الأصل بتاريخ 20 يوليو 2019. تم الاطلاع عليه بتاريخ 20 يوليو 2019 .
- ↑ "P1285R0: لا تجعل لغة C++ غير قابلة للتنفيذ على وحدات المعالجة المركزية الصغيرة" . مؤرشف من الأصل بتاريخ 15 يوليو 2019. تم الاطلاع عليه بتاريخ 20 يوليو 2019 .
- ↑ "P1208R6: اعتماد source_location من أساسيات المكتبة الإصدار 3 للغة C++20" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 20 أغسطس 2019. تم الاطلاع عليه بتاريخ 20 أغسطس 2019 .
- ↑ "P0980R1: جعل std::string constexpr" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 29-09-2020 . تم الاطلاع عليه بتاريخ 30-07-2020 .
- ↑ "P1004R2: جعل std::vector constexpr" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 28-09-2020 . تم الاطلاع عليه بتاريخ 30-07-2020 .
- ↑ "P0660R10: إيقاف الرمز المميز والانضمام إلى سلسلة العمليات" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 20 أغسطس 2019. تم الاطلاع عليه بتاريخ 20 أغسطس 2019 .
- ↑ اجتماع الخريف في نوفمبر 2019
- ↑ "r/cpp - تقرير رحلة لجنة ISO C++ في بلفاست بتاريخ 2019-11 — بدء معالجة التعليقات على مسودة لجنة C++20؛ تشكيل فريق مراجعة واجهة التطبيق الثنائية (ABI)" . reddit . 9 نوفمبر 2019. مؤرشف من الأصل بتاريخ 2019-11-09 . تم الاطلاع عليه بتاريخ 2019-11-09 .
- ↑ ساتر، هيرب (9 نوفمبر 2019). "تقرير رحلة: اجتماع معايير ISO C++ الخريفي (بلفاست)" . مطحنة ساتر . مؤرشف من الأصل في 9 نوفمبر 2019. تم الاسترجاع في 9 نوفمبر 2019 .
- ↑ botondballo (15 نوفمبر 2019). "تقرير رحلة: اجتماع معايير لغة C++ في بلفاست، نوفمبر 2019" . ها هو والدو! . مؤرشف من الأصل في 20 نوفمبر 2019. تم الاسترجاع في 24 نوفمبر 2019 .
- ↑ "P1907R0: تناقضات مع معلمات القوالب غير النوعية" . www.open-std.org . 2019-10-07. مؤرشف من الأصل في 2019-11-09 . تم الاسترجاع في 2019-11-09 .
- ↑ "P1714: بروتوكول NTTP غير مكتمل بدون أنواع البيانات float وdouble وlong double! (مراجعة 1)" . www.open-std.org . 19-07-2019. مؤرشف من الأصل في 09-11-2019 . تم الاطلاع عليه في 09-11-2019 .
- ↑ "P1855R=: Make <compare> freestanding" . www.open-std.org . 2019-10-05. مؤرشف من الأصل في 2019-11-09 . تم الاسترجاع في 2019-11-09 .
- ↑ "P1872R0: يجب أن يكون لـ span نوع حجم وليس نوع فهرس" (ملف PDF) . www.open-std.org . 16-09-2019. مؤرشف (PDF) من الأصل بتاريخ 09-11-2019 . تم الاطلاع عليه بتاريخ 09-11-2019 .
- ↑ "P1456: طرق العرض للتحريك فقط" (ملف PDF) . www.open-std.org . 25 يناير 2019. مؤرشف (ملف PDF) من الأصل بتاريخ 9 نوفمبر 2019. تم الاطلاع عليه بتاريخ 9 نوفمبر 2019 .
- ↑ "P1391: مُنشئ النطاق لـ std::string_view" (ملف PDF) . www.open-std.org . مؤرشف (PDF) من الأصل بتاريخ 2020-01-04 . تم الاطلاع عليه بتاريخ 2019-11-09 .
- ↑ "P1394: مُنشئ النطاق لـ std::span" (ملف PDF) . www.open-std.org . 2019-08-02. مؤرشف (PDF) من الأصل بتاريخ 2019-11-09 . تم الاطلاع عليه بتاريخ 2019-11-09 .
- ↑ "P1870R1: نطاق إعادة التوجيه <T> دقيق للغاية" . www.open-std.org . 6 أكتوبر 2019. مؤرشف من الأصل في 9 نوفمبر 2019. تم الاطلاع عليه في 9 نوفمبر 2019 .
- ↑ "P0883: إصلاح التهيئة الذرية" (ملف PDF) . www.open-std.org . 2018-06-05. مؤرشف (ملف PDF) من الأصل بتاريخ 2019-11-09 . تم الاطلاع عليه بتاريخ 2019-11-09 .
- ↑ "وحدات الماكرو المفقودة لاختبار الميزات 2018-2019" . www.open-std.org . 2019-10-06. مؤرشف من الأصل في 2019-11-09 . تم الاسترجاع في 2019-11-09 .
روابط خارجية
- رابط لشراء معيار ISO/IEC 14882:2020 من متجر ISO الإلكتروني.
- N4860 ، النسخة النهائية من مسودة المعيار.
- JTC1/SC22/WG21 – مجموعة العمل المعنية بمعايير لغة C++ التابعة لمنظمة ISO/IEC (المعروفة أيضًا باسم لجنة معايير C++)
- مستودع Ranges ( range-v3 ) على GitHub، من إعداد إريك نيبلر
- لغة سي++
- عائلة لغات البرمجة C++
- معايير لغات البرمجة
- لغات البرمجة التي تم إنشاؤها في عام 2020
- معايير اللجنة الكهروتقنية الدولية
- معايير ISO
