इसका उपयोग रचनाकारों को सजाने के लिए किया जाता है; इतने सजाए गए एक कन्स्ट्रक्टर को निहित रूपांतरणों के लिए कंपाइलर द्वारा उपयोग नहीं किया जा सकता है।
class circle {
circle(const int r) ;
}
circle c = 3 ; // implicit conversion using ctor
संकलक यहाँ चक्र ctor कॉल करेगा:
सी ++ में एक उपयोगकर्ता द्वारा प्रदत्त रूपांतरण है, जहां "उपयोगकर्ता द्वारा प्रदान की" का अर्थ है अप करने के लिए अनुमति देता है, "एक वर्ग निर्माता के माध्यम से", जैसे, , buildinmg सर्कल c
r
के लिए 3 के मान के साथ।
explicit
का उपयोग तब किया जाता है जब आप इसे नहीं चाहते हैं।
class circle {
explicit circle(const int r) ;
}
// circle c = 3 ; implicit conversion not available now
circle c(3); // explicit and allowed
संभावित डुप्लिकेट: http://stackoverflow.com/questions/121162/what-does-the-explicit-keyword-in-c-mean स्पष्ट अर्थ है आप स्पष्ट निर्माण करना होगा कि जोड़ना –