यह सही ढंग से समझने के लिए बस एक त्वरित सवाल है जब आप इस तरह एक निर्माता के साथ एक वर्ग बनाने के क्या होता है:संकलक उत्पन्न कंस्ट्रक्टर्स
class A
{
public:
A() {}
};
मुझे पता है कि कोई डिफ़ॉल्ट निर्माता के बाद से यह पहले से ही परिभाषित किया गया है उत्पन्न होता है लेकिन कर रहे हैं संकलक द्वारा उत्पन्न प्रतिलिपि और असाइनमेंट कन्स्ट्रक्टर या दूसरे शब्दों में मुझे को एक निजी प्रतिलिपि बनाने वाला और एक निजी असाइनमेंट ऑपरेटर घोषित करने के लिए इसे रोकने की आवश्यकता है?
class A
{
private:
// needed to prevent automatic generation?
A(const A&);
A& operator=(const A&);
public:
A() {}
};
दरअसल छिपा नहीं होगा, हालांकि यदि आप इस, कॉपी/काम को रोकने की जाँच करने के लिए उपयोग कर रहे हैं [बढ़ावा देने :: noncopyable] (http: // www .boost.org/doc/libs/1_55_0/libs/उपयोगिता/utility.htm # Class_noncopyable)। (आप इस साधारण वर्ग को बाहर निकाल सकते हैं या अपना खुद का लिख सकते हैं और जहां भी चाहें इसका पुन: उपयोग कर सकते हैं।) – TypeIA