Wirtualny Klon

Zacznijmy od motywującego przykładu, który przedstawi pewien problem: #include <iostream> class Base { public: virtual ~Base() = default; virtual void execute() const { std::cout << „Base::execute()\n”; } }; class Derived : public Base { public: virtual void execute() const override { std::cout << „Derived::execute()\n”; } }; void process(Base *b) { Base *a = new Base(*b);…