प्रकार const std::string के स्थिर डेटा सदस्यों को परिभाषित करना
C में, प्रकार std::string के एक निजी स्थिर स्थिरांक सदस्य को परिभाषित करना एक वर्ग के भीतर इन-क्लास इनिशियलाइज़ेशन का उपयोग करना, जैसा कि नीचे दिखाया गया है, सी मानक के अनुरूप नहीं है:
class A { private: static const string RECTANGLE = "rectangle"; }
हालांकि, सी इस कार्यक्षमता को प्राप्त करने के लिए वैकल्पिक दृष्टिकोण प्रदान करता है।
सी 17 इनलाइन वेरिएबल्स
सी 17 के बाद से, आप इनलाइन वेरिएबल्स का उपयोग कर सकते हैं यह उद्देश्य. इनलाइन वैरिएबल एक सी 17 सुविधा है जो इनलाइन कीवर्ड के साथ सीधे क्लास परिभाषा के भीतर एक स्थिर वैरिएबल की घोषणा की अनुमति देती है। उदाहरण के लिए:
// In a header file (if necessary) class A { private: inline static const string RECTANGLE = "rectangle"; };
प्री-सी 17 दृष्टिकोण
सी 17 से पहले, आपको क्लास परिभाषा के बाहर स्थिर सदस्य को परिभाषित करना होगा और वहां इनिशियलाइज़र प्रदान करना होगा। यहां एक उदाहरण है:
// In a header file (if necessary) class A { private: static const string RECTANGLE; };
// In one of the implementation files const string A::RECTANGLE = "rectangle";
नोट: आपके द्वारा प्रयास किया गया इनिशियलाइज़ेशन सिंटैक्स (वर्ग परिभाषा के भीतर) केवल इंटीग्रल और एनम प्रकारों के लिए समर्थित है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3