The constructor is used to allocate the memory if required and constructing the object of class whereas, a destructor is used to perform required clean-up when an object is destroyed . The destructor is called automatically by the compiler when an object gets destroyed.