[solved] Rückgabetyp: Oberklasse, Rückgabewert: Objekt der Unterklasse
-
Der Titel sagt eigentlich schon, was ich will.
Ich habe eine abstrakte Klasse RandomMatrix<T>. Bisher existierte eine Funtkion mit Rückgabetyp RandomMatrix<T>*, in der ein Objekt der gewünschten Unterklasse (BCH<T> oder WegmanCarter<T>) mit "new" erstellt und zurückgegeben wurde. Jetzt wollte ich das ohne "new" programmieren. Wenn man RandomMatrix<T> zurückgibt, dürfte es (wenn ich mich recht entsinne) Probleme geben, da die Unterklasse dann "zurechtgeschnitten" wird. Also wollte ich als Typ RandomMatrix<T>& nehmen, aber ich bekomme das nicht kompiliert.Vielleicht kann mir jemand sagen, wie man das richtig macht.
-
Gib einen
std::unique_ptr<RandomMatrix<T>>zurück oder, wenn du kein C++11 hast,std::auto_ptr<RandomMatrix<T> >
-
thx.