Article View: pl.comp.lang.c
Article #272379Re: [SGCL] Odśmiecania współbieżnego ciąg dalszy
From: Jedrzej Dudkiewicz
Date: Wed, 05 Mar 2008 10:27
Date: Wed, 05 Mar 2008 10:27
22 lines
2354 bytes
2354 bytes
Sebastian Kaliszewski wrote: > Jedrzej Dudkiewicz wrote: >>> Destruktory z C++ są rozwiązaniem cienkim. Cienkim z jednego, >>> prozaicznego, ale kluczowego(!), powodu. Z poziomu destruktora nie da się >>> poinformować o błędzie >> Czy możesz podać jakiś spektakularny przykład, gdzie taka potrzeba >> występuje? > > Oczywiście: > > Np. klasa obsługi (zapisywalnego) pliku z buforowaniem. Przy zamykaniu robi > się opróżnienie buforów, które oczywiście może się nie udać. > Konstrukcja using (z C#) czy with: z Pythona jest zdecydowanie lepsza. Bo > Close() może rzucić wyjątek i ten wyjątek można normalnie obsłużyć. Obsługa takich błędów jest zwykle określona w jakimś firmowym standardzie kodowania czy wymaganych praktyk programistycznych. Równie dobrze można to zaimplementować w destruktorze. Jeżeli faktycznie interesuje nas, czy zapis się powiódł (czasem nie jest to istotne, np. kiedy leci akurat inny wyjątek), to wołamy Close() własnoręcznie. JD
Technical Details
Message-ID:
<fqlsiu$8sc$1@news.supermedia.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!news.supermedia.pl!not-for-mailReferences:
<fppvdq$68v$1@inews.gazeta.pl> <fq0od3$5bm$1@inews.gazeta.pl> <fq0qpa$ekv$1@inews.gazeta.pl> <fq0s58$jvv$1@inews.gazeta.pl> <fq0tjl$shn$1@news.vectranet.pl> <fq10ir$8nn$1@inews.gazeta.pl> <fq140s$2u6$1@news.vectranet.pl> <fq164t$3bl$1@inews.gazeta.pl> <fq1mqa$kqq$1@news.vectranet.pl> <fq42jk$k6t$1@bozon2.softax.pl> <fq69s2$33b$1@news.supermedia.pl> <fqjtbf$201$1@bozon2.softax.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!news.supermedia.pl!not-for-mail From: Jedrzej Dudkiewicz <jedrzej.dudkiewicz@gmail.com.bez.pl> Newsgroups: pl.comp.lang.c Subject: Re: [SGCL] Odśmiecania współbieżnego ciąg dalszy Date: Wed, 05 Mar 2008 11:27:47 +0100 Organization: SuperMedia - http://www.sm.pl Lines: 22 Message-ID: <fqlsiu$8sc$1@news.supermedia.pl> References: <fppvdq$68v$1@inews.gazeta.pl> <fq0od3$5bm$1@inews.gazeta.pl> <fq0qpa$ekv$1@inews.gazeta.pl> <fq0s58$jvv$1@inews.gazeta.pl> <fq0tjl$shn$1@news.vectranet.pl> <fq10ir$8nn$1@inews.gazeta.pl> <fq140s$2u6$1@news.vectranet.pl> <fq164t$3bl$1@inews.gazeta.pl> <fq1mqa$kqq$1@news.vectranet.pl> <fq42jk$k6t$1@bozon2.softax.pl> <fq69s2$33b$1@news.supermedia.pl> <fqjtbf$201$1@bozon2.softax.pl> NNTP-Posting-Host: 212.180.147.34 Mime-Version: 1.0 X-Trace: news.supermedia.pl 1204712863 9100 212.180.147.34 (5 Mar 2008 10:27:43 GMT) X-Complaints-To: abuse@supermedia.pl NNTP-Posting-Date: Wed, 5 Mar 2008 10:27:43 +0000 (UTC) In-Reply-To: <fqjtbf$201$1@bozon2.softax.pl> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.8.1.8) Gecko/20071009 SeaMonkey/1.1.5 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit