Article View: de.comp.lang.c++
Article #2143Re: Funktionstemplate als Memberfunktion
From: Roland Schley
Date: Tue, 16 Apr 1996 13:53
Date: Tue, 16 Apr 1996 13:53
51 lines
1927 bytes
1927 bytes
Matthias Werner wrote:
>
> hi,
>
> ich kam in eine Situation, in der es mir guenstig erschien, eine
> Memberfunction zu schreiben, die fuer alle moeglichen verschiedene Argumente
> jeweils aehnlichen Code besitzt, also:
>
> class X {
> ...
> X& f(int);
> X& f(double);
> X& f(void*);
> ...
> };
>
> wobei die Implementationen von X::f jeweils nur geringfuegig voneinander
> abweichen.
> MMN wuerde eine elegante (und typensiche) Implementation darin bestehen,
> dass f als Funktionstemplate deklariert wird.
> Wuerde f global sein, so waere dies kein Problem.
>
> template <class I> X& f(I i);
>
> Jedoch geben meine Compiler (gcc 2.5.8 und BC 3.1) Fehlermeldungen
> an beim Versuch
>
> class X {
> ...
> template <class I> X& f(I);
> ...
> };
>
> zu deklarieren.
> Warum ist dies nicht moeglich? Diese Moeglichkeit wird bei Stroustrup
> zumindest nicht explizit ausgeschlossen.
> Ein Klassentemplate wuerde auch mir viele Klassen mit jeweils einer
> Memberfunktion liefern, anstatt eine Klasse, deren Memberfunktion
> fuer verschiedene Typen ueberladen wird.
> Habe ich etwas am Template-Konzept falsch verstanden?
>
> Matthias
: Template member functions sollen erst in dem
neuen C++ - Standard drin sein, im ARM steht nix
davon. Die Deklaration waere korrekt, die Compiler
kennen diese Syntax jedoch noch nicht, das ist
alles.
Gruss
R.S.
Technical Details
Message-ID:
<3173A673.76C@ids-scheer.de>Path:
arc1-ca.pugleaf.net!hera.ids-scheer.de!newsReferences:
<4kvppn$pnl@hahn.informatik.hu-berlin.de>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!hera.ids-scheer.de!news From: Roland Schley <schley@ids-scheer.de> Newsgroups: de.comp.lang.c++ Subject: Re: Funktionstemplate als Memberfunktion Date: Tue, 16 Apr 1996 13:53:55 +0000 Organization: IDS Prof. Scheer GmbH, Germany Message-ID: <3173A673.76C@ids-scheer.de> References: <4kvppn$pnl@hahn.informatik.hu-berlin.de> NNTP-Posting-Host: pce107.ids-scheer.de Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 2.01Gold (WinNT; I)