Article View: be.comp.programming
Article #6463Re: ISO C++ does not permit ...
From: Dominique Devriese
Date: Tue, 10 Dec 2002 19:44
Date: Tue, 10 Dec 2002 19:44
50 lines
2634 bytes
2634 bytes
Franky Braem writes:
> "Bert Peers" <piek@ab.oo> wrote in message
> news:VKqJ9.15$Ih.2944@news.chello.be...
>> Franky Braem wrote:
>>
>> > class A : public T<A> { };
>> >
>> > template<class T1> class T { public:
>> > static int var;
>> > };
>> >
>> > Het volgende werkt in VC++ :
>> >
>> > int A::var = 0;
>> >
>> > maar werkt niet met gcc.
>>
>> Lijkt me logisch, dat is de definitie bij een eerdere declaratie
>> van :
>>
>> class A : public T<A> { static int var; };
>>
>> Voor de definitie van een static geldt hetzelfde als voor member
>> functions van T<A>, die zou je ook niet gaan definieren als void
>> A::f () { }
>>
>> Dat de baseclass een template is en ook nog eens A als template
>> parameter heeft maakt niet zoveel uit denk ik :)
> Ik denk van wel. Hierdoor krijgt A een eigen static member var. Stel
> dat B ook derived via dezelfde methode dan zal B::var en A::var niet
> hetzelfde zijn.
dat is sowieso niet het geval.
als je een template hebt:
template<class T>
class Template
{
}
dan moet je in je hoofd houden dat Template<A> en Template<B> helemaal
_niks_ met elkaar te maken hebben. Je moet doen alsof je ze elk apart
had geschreven...
sjuus
domi
--
If you stand on your head, you will get footprints in your hair.
Technical Details
Message-ID:
<871y4plkum.fsf@appel.kotnet.org>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!syros.belnet.be!naxos.belnet.be!news.belnet.be!not-for-mailReferences:
<3df5fa6b$0$20770$ba620e4c@news.skynet.be> <87lm2ykkpg.fsf@appel.kotnet.org> <3df6309c$0$8499$ba620e4c@news.skynet.be> <VKqJ9.15$Ih.2944@news.chello.be> <3df63f89$0$26357$ba620e4c@news.skynet.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,c436a161484c41f1 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2002-12-10 11:47:17 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!syros.belnet.be!naxos.belnet.be!news.belnet.be!not-for-mail From: Dominique Devriese <dominique.devriese@student.kuleuven.ac.be> Newsgroups: be.comp.programming Subject: Re: ISO C++ does not permit ... Date: 10 Dec 2002 20:44:49 +0100 Organization: KULeuvenNet Lines: 50 Sender: domi@appel Message-ID: <871y4plkum.fsf@appel.kotnet.org> References: <3df5fa6b$0$20770$ba620e4c@news.skynet.be> <87lm2ykkpg.fsf@appel.kotnet.org> <3df6309c$0$8499$ba620e4c@news.skynet.be> <VKqJ9.15$Ih.2944@news.chello.be> <3df63f89$0$26357$ba620e4c@news.skynet.be> NNTP-Posting-Host: seven.kulnet.kuleuven.ac.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: naxos.belnet.be 1039549636 13615 134.58.127.12 (10 Dec 2002 19:47:16 GMT) X-Complaints-To: abuse@belnet.be NNTP-Posting-Date: Tue, 10 Dec 2002 19:47:16 +0000 (UTC) User-Agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Common Lisp) Cache-Post-Path: seven.kulnet.kuleuven.ac.be!unknown@domi.kotnet.org X-Cache: nntpcache 2.4.0b5 (see http://www.nntpcache.org/)