سؤال: استكشاف غياب تخصصات النوع المرجعي في std::Optional
في المعيار C، يوفر std::Optional حاوية لـ تحمل قيمة أو تشير إلى غيابها. ومع ذلك، على عكس نظيرتها في Boost، فإن std::اختياري يفتقر إلى تخصصات لأنواع المراجع، مما يترك المستخدمين مع سؤال: لماذا؟ تتعمق هذه المقالة في الأسباب الكامنة وراء قرار التصميم هذا وتستكشف الخيارات البديلة المتاحة في المكتبة القياسية للتعامل مع المراجع إلى القيم الاختيارية.
الإجابة: معالجة المخاوف والتوقعات المستقبلية
خلال الاقتراح الأولي (n3406) للقيم الاختيارية، أثيرت مخاوف من قبل أعضاء اللجنة فيما يتعلق بالمراجع الاختيارية. بعد ذلك، في رقم 3527، اقترح المؤلفون فصل المراجع الاختيارية في اقتراح مساعد لتعزيز فرص اعتماد القيم الاختيارية.
بينما لم يتم تضمين المراجع الاختيارية في C 14 بسبب عوامل أخرى، لم يتم رفضها من قبل اللجنة. وهذا يترك المجال مفتوحًا لإمكانية دمج المراجع الاختيارية في معيار C مستقبلي في حالة تقديم اقتراح.
بدائل للقيم الاختيارية المرجعية
على الرغم من عدم وجود std:: التخصص اختياري لأنواع المراجع، إلا أن المكتبة القياسية توفر بديلاً للمراجع الاختيارية القيم:تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3