What is the secret of C++ virtual constructors, virtual destructors, and pure virtual functions

What is the secret of C++ of a virtual constructor, virtual destructor, and a pure virtual function