Article View: de.comp.lang.c++
Article #1495Re: virt. Klassen in STL-Container?
From: Walter Doerwald
Date: Thu, 01 Feb 1996 21:35
Date: Thu, 01 Feb 1996 21:35
28 lines
1296 bytes
1296 bytes
M G Berberich schrieb in <4eokrl$13o@news.rz.uni-passau.de> folgendes: > Hallo, > > Ich habe gestern versucht abgeleitete Klassen mit virtuellen > Funktionen in einem STL-Container (list) zu speichern. Dabei musste > ich feststelle, dass die Klassen ihre Identitaet verlieren wenn man > sie in den Container stellt. D. h. beim Aufruf einer virtuellen > Funktion wird die Funktion der Basisklasse aufgerufen und nicht die > der abgeleitetn Klasse. > > Kann man das irgendwie verhindern? > > MfG > bmg Die Container der STL erstellen beim Einfügen per Copykonstruktor eine Kopie des Objekts, damit wird der Copy-Konstruktor der Template-Argument-Klasse benutzt. Du mußt damit also erst mal von Objekten auf Zeiger umsteigen, maW statt list<gurk> halt list< auto_ptr<gurk> > oder sowas verwenden. Bis demnächst... Walter Dörwald
Technical Details
Message-ID:
<45915745@data.franken.de>Path:
arc1-ca.pugleaf.net!data.franken.de!postmasterReferences:
<4eokrl$13o@news.rz.uni-passau.de>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!data.franken.de!postmaster Newsgroups: de.comp.lang.c++ References: <4eokrl$13o@news.rz.uni-passau.de> From: "Walter Doerwald" <walter@data.franken.de> Date: Thu, 01 Feb 96 22:35:05 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-NewsReader: IntuiNews 1.3a (7.9.95) Subject: Re: virt. Klassen in STL-Container? Message-ID: <45915745@data.franken.de>