You don't. In fact, you don't really call the constructor at all.
C++ insures that just one constructor is called for each class that an object implements. I don't know if "implements" is the right word, but a class can have one or more base classes, and each of those can have base classes, and so on. Each of those gets exactly one constructor call when the object is created.
If you need to repeat code from a constructor, the usual way to do that is to have both the constructor and some other method call a common private method. You should take care to do this only after the constructor has initialized the object to a usable state. So, a constructor with arguments might first initialized the object to default state, then call a private init() method to build up object state using those paramaters.
Then a public reset() method might take a similar set of arguments, and first release resources (delete any pointers created by new, close a stream, terminate a network connection, whatever) and reset the object to just-created state, and THEN call the same private init() to rebuild the object according to the values supplied. This is also the sort of thing that an overloaded assignment operator might do.
By the way, the code to do that "tear down" might have enough in common with the destructor that both might use another common private method.