On Saturday 20 of March 2004 20:26, Bartosz Taudul wrote:
> #include <cstdio>
> class A
> {};
> class B
> {
>         static A *A;
> };
> A *B::A=NULL;
>
> gcc 3.4 kompiluje bez problemów, gcc 3.3 wywala:
> test.cc:6: error: declaration of `A*B::A'
> test.cc:3: error: changes meaning of `A' from `class A'
>
> Który działa dobrze?

to co napisales przypomina z lekka fragment tego typu:

int *klasa::int = 0;

musialbym przejzec draft c++ i zobaczyc czy mozna
deklarowac pola, ktorych nazwa pokrywa sie z nazwa typu/klasy.

moze g++3.4 wykazuje sie w tym przypadku jakas pseudo
inteligencja i chwyta kontekst klasa::pole? (albo ma buga :>)

-- 
If you think of MS-DOS as mono, and Windows as stereo,
  then Linux is Dolby Digital and all the music is free...

_________________________________________
http://pld-linux.org/ = faq, howto, newsy

dostales tutaj odpowiedz na swoje pytanie?
podziel sie z innymi i dopisz do FAQ!
                http://pld-linux.org/FAQ/

Odpowiedź listem elektroniczym