Destructors
A destructor function is a special function which if present automatically gets executed whenever an object goes out of scope i.e. gets destroyed.
Properties
• Name of the destructor function is exactly same as that of the class except that it is preceded by a special symbol ~ (tilde).
• It has no return type not even void
• Destructor function if present automatically gets executed whenever an object goes out of scope i.e. gets destroyed.
• It cannot be invoked by an object of the class.
• We cannot pass any arguments to the destructor function.
• Destructor functions cannot be overloaded (Reason: because we cannot pass any arguments to the function).
• Destructor function gets executed in reverse order of the creation of the objects.
Question:
How many destructors can be present in one class?
Answer:
Only one. (Reason: as we cannot pass any arguments to the destructor function, and hence it cannot be overloaded.)
Question:
Can the destructor function be overloaded?
Answer:
No destructor function cannot be overloaded, as we cannot pass any arguments to a destructor function.