Article View: de.comp.lang.c++
Article #825Re: Templates in Klassen
From: Karl-Heinz Krause
Date: Wed, 15 Nov 1995 16:25
Date: Wed, 15 Nov 1995 16:25
32 lines
1538 bytes
1538 bytes
Am 13. Nov 1995 schrieb Mario Zimmermann (zimmerma@lion.de):
> Versuch's mal mit einem Pointer und mit der empfohlenen Methode,
> den Typ des Arrays vorher zu deklarieren, also:
> typedef TArrayAsVector<string> TMyEimerArray;
Wer "empfiehlt" sowas? Das hat überhaupt nichts mit dem Problem von
Hans-Martin Speiser zu tun.
> class Eimer
> {
> private:
> TMyEimerArray *inhalt;
> Im Konstruktor wird dann das Array initialisiert:
> inhalt new TMyEimerArray (10, 0, 10);
Diese Indirektion (inhalt als Zeiger auf Array statt direkt als Array zu
definieren) ist hier unnötig, und unnötige Indirektionen sollte man
vermeiden. (Geht letztlich immer zu Lasten der Programmeffizienz.)
Das Problem von Hans-Martin Speiser war doch einfach, daß er nicht
wußte, wie man in einem Konstruktor für eine Klasse den Konstruktor
einer Membervariablen aufruft. Durch den Umweg über Zeiger umgehst Du
das (jetzt erfolgt die Initialisierung von inhalt durch einen Aufruf von
new). Aber warum Umweg, wenn es auch direkt geht?
Karl-Heinz Krause
Technical Details
Message-ID:
<48d7r2$l44@news00.btx.dtag.de>Path:
arc1-ca.pugleaf.net!news00.btx.dtag.de!not-for-mail!KrauseReferences:
<48741g$24k@apopi.u-strasbg.fr> <487o0t$9ut@lucky.lion.de>Show Full Headers
Complete Article Headers
Newsgroups: de.comp.lang.c++ Message-ID: <48d7r2$l44@news00.btx.dtag.de> From: Krause@btx.dtag.de (Karl-Heinz Krause) Path: arc1-ca.pugleaf.net!news00.btx.dtag.de!not-for-mail!Krause Subject: Re: Templates in Klassen Date: Wed, 15 Nov 1995 16:25:54 +0000 References: <48741g$24k@apopi.u-strasbg.fr> <487o0t$9ut@lucky.lion.de> X-Gateway: ZCONNECT XX ius.gun.de [UNIX/Connect v0.73] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit