C++ में Destructor क्या है उसकी संपूर्ण जानकारी Practical सहित 

What is Destructor in C++ in Hindi

C++, में Destructor एक Class का विशेष Member function है जो उस समय Execute होता है जब उस Class के कोई Object को खत्म या समाप्त किया जाता है या वह Scope से बाहर चला जाता है।

इसका नाम Class जैसा ही है लेकिन इसके सामने ~ (tilde) लगा दिया जाता है।

Destructor कोई Arguments नही लेता और न ही कोई value return करता है।
इसका मुख्य कार्य सफाई करना है जैसे Memory को free करना, Object द्वारा 
उपयोग की जाने वाली Files बंद करना। यह Memory leak और अन्य समस्याओं को रोकने में मदद करता है।

Syntax for Destructor in C++

~ClassName();
Example:
~Student();

Characteristics of Destructor in C++ in Hindi 

Destructor की निम्न विशेषताएं होती है
1) जब Object समाप्त हो जाते हैं या उसकी जरुरत नहीं रहती तब Destrcutor function स्वत: ही Call होते हैं।

2) जब Object समाप्त हो जाता है तब यह Memory को waste होने से बचाता है।
3) Destructor कोई भी Value return नहीं करते और न ही उनके पास कोई Parameters होते हैं।

4) ये inherit तथा overload नही किए जा सकते है।

5) ये Virtual हो सकतें है।

6) ये Static नही हो सकते।

7) एक Destructor member function दूसरे member functions को Call कर सकते हैं।

8) ये Class के अंदर तथा बाहर Define हो सकते हैं।

9) यह सुनिश्चित करता है कि files, connections, अन्य resources सही ढंग से बंद किया गया है।

10) एक Class के केवल एक ही  Destructor हो सकते है, अर्थात एक Class मे कई Destructor की अनुमति नहीं है।


Why we need Destructor in C++ in Hindi- हमे Destructor की जरुरत क्यों है?

C++, में Destructors, Resources को manage करने और और एक Object को जब उसकी जरूरत नहीं होती,
समाप्त करने के लिए महत्वपूर्ण है।

ये Resources जैसे like memory, file handles, और network connections जिसे एक Object द्वारा Use किया गया हो, उन्हे मुक्त करने के लिए मदद करता है।

बिना Destructor, के यदि इन Resources को सही तरीके से खाली न किया जाए तो यह Memory leak या अन्य समस्या पैदा कर सकता है।

Destructors, Files को close करने, या locks को मुक्त करने का भी कार्य करता है, जो Aplications को सुचारू रूप से चलाने में मदद करता है 

जब कोई Object उपयोग में नहीं रहती है तो उन्हें स्वचालित रूप से Call किया जाता है, जिससे यह सुनिश्चित होता है कि सब कुछ सही ढंग से साफ हो गया है। यह Resources को leak होने से रोकता है तथा चीजों को कुशलतापूर्वक चालू रखता है।

Program for Destructor
#include<iostream>
using namespace std;
class Student{
public:
Student (){
cout<<"Constructor is executed:"<<endl;
         }
~Student (){
cout<<"Destructor is executed:"<<endl;
         }
};
int main(){
//Creation of objects 
Student s1,s2;
return 0;
}
Output:
Constructor is executed:
Constructor is executed:
Destructor is executed:
Destructor is executed:

Explanations:
ऊपर Program में Student नाम से एक Class define किया गया है जिसमे दो Member functions अर्थात एक Student() नाम से Constructor तथा ~Student() Destructor define किया गया है।

Student class के Objects (s1,s2) के निर्माण के समय Student() Constructor, call होगा तथा इन Object के समाप्त होने पर ~Student() Destructor, call होगा

main function में Student class के दो Objects s1 तथा s2 बनाए जाते जैसे ही ये दो Objects का निर्माण होता है, Constructors दो बार Call होता है और जैसे ही ये Objects समाप्त होता है ये Destructor दो बार Call होता है।

Differences between Constructor and Destructor in Hindi 

1)
Constructor
यह नए Object के बनने पर स्वत: ही Call होता है
Destructor:
जब Object को समाप्त किया जाता है उस समय यह Call होता है। 

2)
Constructor:
Class के समान इसका नाम है।
Destructor
इसका नाम भी Class नाम के समान है लेकिन इसके सामने एक tilde (`~`) लगा होता है।

3)
Constructor:
Object को Initialize करने के लिए parameters ले सकता है
Destructor
यह पी नही लेता है।

4)
Constructor
यह कोई Value return नहीं करता है Destructor
यह भी कोई Value return नहीं करता है 

5) 
Constructor:
आपके पास विभिन्न parameters वाले कई constructors हो सकते हैं।
Destructor:
आपके पास केवल एक Destructor हो सकते हैं 

6) 
Constructor:
जब एक Object का निर्माण होता हैं तब यह स्वत: ही Execute होता है।Destructor
जब एक Object को समाप्त किया जाता है तब यह स्वत: ही Execute होता है।

7)
Constructor
Derived class constructors के पहले Base class constructors run होता है 
Destructor:
Base class constructors के पहले Derived class constructors run होता है 

8)
Constructor
इसका Use, resources को set up करने और Object को initialize करने मे होता है।
Destructor:
इसका Use resources को खाली करने और सफाई करने में होता है।

9) 
Constructor:
 यह overloaded हो सकता है।Destructor
यह overloaded नही हो सकता 

 Related Posts

> C++ क्या है? उसके इतिहास, गुण, उपयोग, फायदे और नुकसान 

> Basic structure of C++ Program 

> C++ में Tokens क्या है? और उसके प्रकार

> C++ Variables क्या है?, उसके प्रकार, उसे कैसे Declare, Define करते हैं

> C++ में Constants क्या है? उसके प्रकारों की संपूर्ण जानकारी

> C++ में Basic Input और Output (cin,cout,cerr) की जानकारी

> Data type in C++ की संपूर्ण जानकारी 

> C+ में Operators और उसके प्रकार जानें Practical सहित 

> C++ में Conditional और उसके प्रकारों को जानें Practical सहित 

> C++ में Looping statements और उसके प्रकार Practical सहित 

> C++ में Jump Statements और उसके प्रकारों की संपूर्ण जानकारी Practical सहित

> C++ में Array क्या है? और उसके प्रकारों की जानकारी Practical सहित

> C++ में Function क्या है उसके प्रकार, उपयोग प्रोग्राम सहित 

> C++ में Structure क्या है Practical सहित

> OOPs Concepts in C++ in Hindi- C++ में OOPs के बारे में

> Oops के फायदे और नुकसान की जानकारी 

> OOP और POP के बीच अंतर 

> C++ में Class और Object की सम्पूर्ण जनकारी

> C++ में Array of Objects क्या है? 

> C++ में Pointers, Pointer to an objects, Pointer to an Array की संपूर्ण जानकारी हिंदी में।

C++ में Passing objects क्या है

> C++ में Reference और Type Casting की संपूर्ण जानकारी

> C++ में Access specifier की संपूर्ण जानकारी 

> C++ में Static Data Members और Member Functions के बारे में Practical सहित 

> C++ में Memory allocation और Memory management operators (new और delete) Practical सहित 

> Friend Function in C++ in Hindi 

> Friend Class in C++ in Hindi Practical सहित 

> Inline function in C++ in Hindi 

> Function Overloading in C++ in Hindi Practical सहित 

> Operator Overloading in C++ in Hindi PRACTICAL सहित 

> C++ में Constructor क्या है और उसके प्रकारों की संपूर्ण जानकारी

> C++ मे Inheritance क्या है उसके प्रकारों को जानें प्रोग्राम सहित

> C++ में Polymorphism क्या है? और उसके प्रकारों को जानें

> C++ में Virtual function की संपूर्ण जानकारी

> C++ में File handling की संपूर्ण जानकारी 

> C++ में Exception handling  की संपूर्ण जानकारी