"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > `एसटीडी::वैकल्पिक` में संदर्भ प्रकार की विशेषज्ञता का अभाव क्यों है?

`एसटीडी::वैकल्पिक` में संदर्भ प्रकार की विशेषज्ञता का अभाव क्यों है?

2024-11-08 को प्रकाशित
ब्राउज़ करें:366

Why Does `std::optional` Lack Reference Type Specializations?

प्रश्न: एसटीडी::वैकल्पिक में संदर्भ प्रकार की विशेषज्ञता की अनुपस्थिति की खोज

मानक सी में, एसटीडी::वैकल्पिक एक कंटेनर प्रदान करता है किसी मान को रखना या उसकी अनुपस्थिति को इंगित करना। हालाँकि, बूस्ट में अपने समकक्ष के विपरीत, std:: option में संदर्भ प्रकारों के लिए विशेषज्ञता का अभाव है, जिससे उपयोगकर्ताओं के मन में एक प्रश्न रह जाता है: क्यों? यह लेख इस डिज़ाइन निर्णय के पीछे के कारणों पर प्रकाश डालता है और वैकल्पिक मूल्यों के संदर्भों को संभालने के लिए मानक पुस्तकालय में उपलब्ध वैकल्पिक विकल्पों की खोज करता है।

उत्तर: चिंताओं और भविष्य की संभावनाओं को संबोधित करना

वैकल्पिक मूल्यों के लिए प्रारंभिक प्रस्ताव (एन3406) के दौरान, वैकल्पिक संदर्भों के संबंध में समिति के सदस्यों द्वारा चिंताएं उठाई गईं। इसके बाद, n3527 में, लेखकों ने वैकल्पिक मूल्यों को अपनाने की संभावनाओं को बढ़ाने के लिए वैकल्पिक संदर्भों को एक सहायक प्रस्ताव में अलग करने का प्रस्ताव रखा।

हालांकि अन्य कारकों के कारण वैकल्पिक संदर्भ सी 14 में शामिल नहीं किए गए थे, उन्हें अस्वीकार नहीं किया गया था कमिटी। इससे प्रस्ताव प्रस्तुत किए जाने पर भविष्य के सी मानक में वैकल्पिक संदर्भों को शामिल करने की संभावना खुल जाती है।

वैकल्पिक मूल्यों को संदर्भित करने के लिए विकल्प

एसटीडी की अनुपस्थिति के बावजूद:: संदर्भ प्रकारों के लिए वैकल्पिक विशेषज्ञता, मानक पुस्तकालय वैकल्पिक संदर्भ के लिए एक विकल्प प्रदान करता है मान:

  • std::reference_wrapper<: option>>: यह आपको एक वैकल्पिक मान का संदर्भ बनाने की अनुमति देता है, यह सुनिश्चित करते हुए कि वैकल्पिक में किए गए परिवर्तन मूल्य संदर्भ में प्रतिबिंबित किया जाएगा. हालाँकि, यह ध्यान रखना महत्वपूर्ण है कि यदि संदर्भ एक स्थिर संदर्भ है (यानी, std::cref के साथ आरंभ किया गया है) तो वैकल्पिक मान अपरिवर्तनीय रहता है।

निष्कर्ष में, संदर्भ प्रकार की विशेषज्ञता की कमी std:: option प्रस्ताव प्रक्रिया के दौरान चिंताओं से उत्पन्न हुआ। हालाँकि, समिति भविष्य में वैकल्पिक संदर्भों पर विचार करने के लिए तैयार है। इसके अतिरिक्त, मानक पुस्तकालय अंतरिम में वैकल्पिक मूल्यों को संदर्भित करने के लिए एक विकल्प के रूप में std::reference_wrapper<: option>> प्रदान करता है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3