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

Namespace के बाहर C ++ वर्ग के सदस्यों की स्पष्ट विशेषज्ञता विफल क्यों होती है?

2025-04-18 को पोस्ट किया गया
ब्राउज़ करें:924

] हालाँकि, स्पष्ट विशेषज्ञता का प्लेसमेंट महत्वपूर्ण है, जैसा कि निम्न कोड स्निपेट द्वारा प्रदर्शित किया गया है:

Why Does Explicit Specialization of Class Members Fail Outside a Namespace in C  ?
टेम्पलेट वर्ग cconstraint { // ... टेम्पलेट शून्य सत्यापित (int स्थिति, int बाधाओं []) { } टेम्पलेट void सत्यापित करें (int, int []) { } … उपरोक्त उदाहरण में, CConstraint को किसी भी नाम स्थान के अंदर घोषित नहीं किया गया है, और इस प्रकार सत्यापित करने की स्पष्ट विशेषज्ञता अमान्य है। यह व्यवहार गैर-मानक है और इस पर भरोसा नहीं किया जाना चाहिए। यहाँ कोड का एक सही संस्करण है:

नेमस्पेस mynamespace { टेम्पलेट वर्ग cconstraint { // ... टेम्पलेट शून्य सत्यापित (int स्थिति, int बाधाओं []) { } टेम्पलेट void सत्यापित करें (int, int []) { } }; } को Mynamespace नेमस्पेस के भीतर cconstraint को एनकैप्सुलेट करके, हम यह सुनिश्चित करते हैं कि इसके स्पष्ट विशेषज्ञता भी उस नाम स्थान के भीतर घोषित की जाती है, संकलन त्रुटि को हल करते हुए। उत्तर:

नामस्थान विवरण { टेम्पलेट void सत्यापित (int, int []) {} टेम्पलेट शून्य सत्यापित करें (int, int []) {} } टेम्पलेट वर्ग cconstraint { // ... टेम्पलेट शून्य सत्यापित (इंट स्थिति, इंट बाधाएं []) { विवरण :: सत्यापित करें (स्थिति, बाधाओं); } };

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

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

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

Copyright© 2022 湘ICP备2022001581号-3