सी 11 की शुरूआत के साथ, डेवलपर्स ने कक्षाओं को आरंभ करने के लिए सिंटैक्स विकल्पों का एक नया सेट प्राप्त किया, जो पहले से मौजूद में जोड़ा गया था ब्रेस-संलग्न इनिशियलाइज़र। विकल्पों की इस बहुतायत ने एक पेचीदा दुविधा प्रस्तुत की है: प्रत्येक सिंटैक्स विकल्प का उपयोग कब करें?
प्रदान किए गए दिशानिर्देश सुझाव देते हैं कि यदि इरादा किसी ऑब्जेक्ट को सटीक मान निर्दिष्ट करना है , प्रतिलिपि आरंभीकरण (=) का समर्थन किया जाना चाहिए। ऐसा इसलिए है क्योंकि यह संभावित रूप से भिन्न शब्दार्थों के साथ एक स्पष्ट कंस्ट्रक्टर को अनजाने में लागू करने के जोखिम को कम करता है। यदि कॉपी इनिशियलाइज़ेशन अनुपलब्ध है, तो ब्रेस इनिशियलाइज़ेशन पर विचार किया जाना चाहिए, और कोष्ठक इनिशियलाइज़ेशन का उपयोग अंतिम उपाय के रूप में किया जाना चाहिए। वस्तु के भीतर संग्रहीत किया जाना चाहिए। यह सिंटैक्स विशेष रूप से वैक्टर, सरणियों और जटिल संख्याओं के लिए उपयुक्त है। , कोष्ठक आरंभीकरण नियोजित किया जाना चाहिए। यह अक्सर आकार या फ़ाइल नाम निर्दिष्ट करने वाले तर्कों के मामले में होता है। पूर्णांक बी(1); // सटीक मान के लिए आरंभीकरण की प्रतिलिपि बनाएँ int ए{1}; // संग्रहीत मूल्य के लिए ब्रेस आरंभीकरण पूर्णांक सी = 1; // डिस्क्रिप्टर मान के लिए कोष्ठक आरंभीकरण (जैसे, आकार) int d = {1}; // संग्रहीत मूल्य के लिए ब्रेस आरंभीकरण }
{ // उदाहरण 4 std::functionअस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3