Article View: pl.comp.objects
Article #4724Re: Prawda o C++
From: Adam Karpierz
Date: Fri, 22 Jan 1999 01:02
Date: Fri, 22 Jan 1999 01:02
37 lines
3189 bytes
3189 bytes
Sektor van Skijlen wrote:
>Jesli chodzi o fizycznosc implementacji referencji, to postanowilem to
>sprawdzic. Najlatwiejszym sposobem sprawdzenia, czy jakies pole fizycznie
>istnieje, jest zunifikowanie go z innym.
>
>Przyklad ten kompiluje sie na gcc (uzywalem wersji 2.8.1), niestety nie
>kompiluje go BC 3.1 . Ten drugi dawal tak idiotyczne komunikaty o bledach, ze
>nie moge stwierdzic, czy to jest naruszenie standardu przez g++, czy idiotyzm
>BC 3.1 (stawailbym na to drugie, acz nie wyklucza to pierwszego). No i udalo
>mi sie w ten sposob obalic mit o niezmienialnosci referencji. Prosze spojrzec:
Borland (4.52) daje prawidlowy komunikat bledu
nie moze istniec obiekt klasy z polem typu referencja neizainicjowanym w
konstruktorze.
Poniewaz g++ posiada rozszerzenie polegajace na tym ze referencja
moze byc inicjawana wprost a niekoniecznie przez inicjator w konstruktorze
wiec dopuszcza przy okazji taka konstrukcje jak powyzsza.
Zanim sie cos przyrowna do idiotyzmu lepiej sie zastanowic
bo idiotyzm ma to do siebie ze lubi sie obrocic przeciwko pomstujacemu.
Poza tym duzym naduzyciem jest wysuwanie sadow o kompilatorze (BC3.1)
i jego zgodnosci ze standardem z 1992r (czyli 3 lata po ukonstytuowanu sie
komitetu ds standardu C++ i 6 lat przed jego uchwaleniem)
Jesli chodzi o odkrycie sposobu przestawiania referencji to
mimo ze dowodzi ona niezbicie _mozliwosc_ istneinia cech "fizycznosci"
referencji oraz identycznej realizacji w C++ referencji i wskaznika to jednak
jest to jednak konstrukcja niegwarantowana i nieoprzenosna.
Inny kompilator czy optymalizator nie musi zachowac (i nie zachowuje)
"fizycznosci" referencji jao pola klasy. Tak ze niestety "nieprzestawialnosc"
referencji w C++ nie jest mitem lecz faktem.
Pozdrawiam
--
Adam Karpierz
Poszukuje stalej pracy, moje dane:
http://www.adares.alpha.pl/cv.htm
Technical Details
Message-ID:
<788ir6$8lt$1@zeus.polsl.gliwice.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.nask.pl!orion.cst.tpsa.pl!news.icm.edu.pl!news.task.gda.pl!polsl.gliwice.pl!not-for-mailReferences:
<77o3bl$j0q$1@polonez.man.lodz.pl> <77qi2q$42a$1@polonez.man.lodz.pl> <77qk38$ken$1@zeus.polsl.gliwice.pl> <77vn97$j3l$1@polonez.man.lodz.pl> <77vsod$l0u$1@zeus.polsl.gliwice.pl> <36A3823B.1950@bear.com> <78073r$t5p$1@zeus.polsl.gliwice.pl> <781vtm$9l8$3@polonez.man.lodz.pl> <36a58e24.0@news.vogel.pl> <916854946.11215.0.nnrp-02.c2d9616c@news.demon.co.uk> <36a62532.0@news.vogel.pl> <916860225.14810.0.nnrp-02.c2d9616c@news.demon.co.uk> <36a6326b.0@news.vogel.pl> <787s93$oa7$7@polonez.man.lodz.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.nask.pl!orion.cst.tpsa.pl!news.icm.edu.pl!news.task.gda.pl!polsl.gliwice.pl!not-for-mail From: "Adam Karpierz" <karpierz@itl.pl> Newsgroups: pl.comp.objects Subject: Re: Prawda o C++ Date: Fri, 22 Jan 1999 02:02:31 +0100 Organization: Politechnika Slaska, Gliwice Lines: 41 Message-ID: <788ir6$8lt$1@zeus.polsl.gliwice.pl> References: <77o3bl$j0q$1@polonez.man.lodz.pl> <77qi2q$42a$1@polonez.man.lodz.pl> <77qk38$ken$1@zeus.polsl.gliwice.pl> <77vn97$j3l$1@polonez.man.lodz.pl> <77vsod$l0u$1@zeus.polsl.gliwice.pl> <36A3823B.1950@bear.com> <78073r$t5p$1@zeus.polsl.gliwice.pl> <781vtm$9l8$3@polonez.man.lodz.pl> <36a58e24.0@news.vogel.pl> <916854946.11215.0.nnrp-02.c2d9616c@news.demon.co.uk> <36a62532.0@news.vogel.pl> <916860225.14810.0.nnrp-02.c2d9616c@news.demon.co.uk> <36a6326b.0@news.vogel.pl> <787s93$oa7$7@polonez.man.lodz.pl> Reply-To: "Adam Karpierz" <karpierz@itl.pl_te_spamy_wykoncza_mi_kiedys_nerwy> NNTP-Posting-Host: ppp203.intertele.pl X-Newsreader: Microsoft Outlook Express 4.72.3110.1 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit