Article View: de.comp.lang.c++
Article #660Re: virtuelle templates
From: Bernd Eggink
Date: Wed, 25 Oct 1995 18:52
Date: Wed, 25 Oct 1995 18:52
30 lines
1365 bytes
1365 bytes
Eric Schmidt (e_schmid@informatik.uni-kl.de) wrote:
> Hallo, ich wuerde gerne wissen ob folgende Deklaration in C++ erlaubt ist :
> class A
> {
> template<class T1> virtual test(T1 *to) = 0;
> }
> class B : public A
> {
> template<class T1> test(T1 *to) {...........}
> }
Ist nicht erlaubt. Nur nicht-virtuelle Memberfunktionen sind erlaubt.
Grund: Es hinge vom Aufrufverhalten ab, ob fuer die Klasse A eine
vtab erzeugt werden muss oder nicht. Der Compiler kann aber bei Anlage
der Klasse A nicht voraussehen, ob die Funktion test jemals aufgerufen
wird (dann waere die Klasse polymorph) oder nicht (dann wird die
Funktion auch nicht generiert und die Klasse waere nicht poymorph).
Gruss
Bernd
--
+----------------------------------+
| Bernd Eggink |
| Rechenzentrum Uni Hamburg |
| admin@rzaix13.rrz.uni-hamburg.de |
+----------------------------------+
Technical Details
Message-ID:
<46m114$msg@rzsun02.rrz.uni-hamburg.de>Path:
arc1-ca.pugleaf.net!news.rrz.uni-hamburg.de!rzaix13!adminReferences:
<1995Oct25.180824@informatik.uni-kl.de>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!news.rrz.uni-hamburg.de!rzaix13!admin From: admin@rzaix13.uni-hamburg.de (Bernd Eggink) Newsgroups: de.comp.lang.c++ Subject: Re: virtuelle templates Date: 25 Oct 1995 18:52:19 GMT Organization: University of Hamburg -- Germany Message-ID: <46m114$msg@rzsun02.rrz.uni-hamburg.de> References: <1995Oct25.180824@informatik.uni-kl.de> NNTP-Posting-Host: rzaix13.rrz.uni-hamburg.de X-Newsreader: TIN [version 1.2 PL2]