If you don’t declare them yourself, c++ compilers will declare their own versions of a copy constructor, an assignment operator, a destructor, and a pair of address-of operators. If the class does not declare any constructors, the compilers will declare a default constructor too.