Constructor vs Destructor in C++ - Difference Between Constructor and Destructor
Constructor vs Destructor in C++
| Constructor | Destructor |
|---|---|
| Constructor helps to initialize the object of a class. | Destructor is used to destroy the instances. |
| It is declared as className( arguments if any ){Constructor’s Body }. | it is declared as ~ className( no arguments ){ }. |
| Constructor can either accept arguments or not. | It can’t have any arguments. |
| A constructor is called when an instance or object of a class is created. | It is called while object of the class is freed or deleted. |
| Constructor is used to allocate the memory to an instance or object. | It is used to deallocate the memory of an object of a class. |
| Constructor can be overloaded. | It can’t be overloaded. |
| The constructor’s name is same as the class name. | Here, its name is also same as the class name preceded by the tiled (~) operator. |
| In a class, there can be multiple constructors. | In a class, there is always a single destructor. |
| There is a concept of copy constructor which is used to initialize an object from another object. | There is no copy destructor concept. |
| They are often called in successive order. | They are often called in reverse order of constructor. |