Ich habe die folgende Beziehung von Klassen. Ich möchte die abgeleitete Klasse klonen, aber ich bekomme den Fehler "abstrakte Klasse nicht instanziieren". Wie kann ich die abgeleitete Klasse klonen? Vielen Dank.Cloning C++ Klasse mit rein virtuellen Methoden
class Base {
public:
virtual ~Base() {}
virtual Base* clone() const = 0;
};
class Derived: public Base {
public:
virtual void func() = 0;
virtual Derived* clone() const {
return new Derived(*this);
}
};
Was würde das tun? Ein Klon ist im Wesentlichen eine Operation auf Objektebene. Ohne ein konkretes Objekt, woher weißt du, was du klonen musst? – Joe