का उपयोग करते समय C2248 "निजी सदस्य तक नहीं पहुंच सकता" प्राप्त करना एक वर्ग ने ऑपरेटर new
और delete
ओवरलोड किए हैं। new
सार्वजनिक है, delete
निजी है।सार्वजनिक ऑपरेटर नया, निजी ऑपरेटर हटाएं: नए
जब इस वर्ग का एक उदाहरण के निर्माण, मैं निम्नलिखित त्रुटि मिलती है:
pFoo = new Foo(bar)
example.cpp (1): त्रुटि C2248: 'फू: ऑपरेटर हटाएँ': निजी सदस्य कक्षा में घोषित उपयोग नहीं कर सकते 'फू'
लेकिन यहां delete
पर कोई कॉल नहीं है, तो कंपाइलर के मुड़ दिमाग में क्या चल रहा है? :)
- त्रुटि का कारण क्या है?
- क्या सदस्य
CreateInstance
फ़ंक्शन का उपयोग किए बिना समस्या का समाधान करना संभव है?
2 समस्या।यह है कि वर्ग विरासत में प्राप्त किया जा सकता है और यह विनाशक को सार्वजनिक रूप से सार्वजनिक रूप से फिर से परिभाषित किया जा सकता है। – Marius
निजी विनाशक वाले किसी भी वर्ग को विरासत में नहीं मिला जा सकता है। –