🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.lang.c++
Article #1495

Re: virt. Klassen in STL-Container?

#1495
From: Walter Doerwald
Date: Thu, 01 Feb 1996 21:35
28 lines
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!postmaster
References: <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>