मैं उदाहरण के लिए एक constructor
जब नहीं घोषित करते हैं, संकलक एक default constructor
कोई तर्क और कोई परिभाषा (शरीर) होगा साथ मुझे प्रदान करेगा, और इस प्रकार, कोई कार्रवाई नहीं की ले जाएगा।सी ++ डिफ़ॉल्ट नाशक
अब मैं एक destructor
घोषित नहीं करते, संकलक कोई defintion (शरीर) के साथ एक default destructor
के साथ मुझे प्रदान करेगा, और इस तरह, मैं कोई कार्रवाई नहीं की लगता है।
तो, यदि मैं उदाहरण के लिए किसी ऑब्जेक्ट के साथ समाप्त कर चुका हूं, तो default destructor
ऑब्जेक्ट द्वारा उपयोग की जाने वाली रीयलोकेट (फ्री) मेमोरी नहीं होगी? अगर ऐसा नहीं होता है, तो हम इसे क्यों प्राप्त कर रहे हैं?
और, शायद वही प्रश्न default constructor
पर लागू होता है। यदि यह कुछ भी नहीं करता है, तो यह डिफ़ॉल्ट रूप से हमारे लिए क्यों बनाया गया है?
धन्यवाद।
निर्माता वस्तु की स्मृति को आबंटित नहीं करता है, स्मृति पहले से ही किसी भी तरह इसके लिए आवंटित किया जाता है कन्स्ट्रक्टर कहने से पहले। – dreamlax
इस प्रश्न को प्रस्तुत करते समय बहुत से गलत वक्तव्य। और उन पर इशारा करते हुए जवाब स्वीकार नहीं किया जाता है। – Antonio