🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.c
Article #267694

Re: Ciemna strona C++

#267694
From: Piotr Wyderski
Date: Sat, 10 Nov 2007 14:35
27 lines
2594 bytes
Seweryn Habdank-Wojewódzki wrote:

> OK. Masz 100% racji, ale w tym przypadku zawsze jest jakaś alokacja.

Jest, ale to nie musi oznaczać alokacji na stercie.

> Pokaż mi, że potrafisz go napisać bez alokacji.

Ja go nie potrafię napisać bez alokacji na stercie, bo to struktura
dynamiczna. Potrafię za to napisać go tak, by w typowym przypadku
liczba alokacji wynosiła 0. Wektory są zazwyczaj małe, więc mogę
sobie z góry przydzielić miejsce dla N elementów jako tablica w ciele
klasy i przejść na stertę dopiero po wyczerpaniu pojemności
wbudowanej tablicy. A jakie N jest dobre, to zależy od konkretnego
przypadku, znajdę je sobie uruchamiając program na typowych
danych i mnożąc wynik przez wzięty z sufitu "współczynnik
bezpieczeństwa". :-) Domyślnie mam 64 elementy, ale to parametr
szablonu, więc nie ma problemu z jego nadpisaniem.

> Zwróć uwagę na to jak wygląda linijka oznaczona /* ### */. Tam
> są "new B()", to jest alokacja.

Te alokacje się nie liczą, wektor o nich nie wie. Mnie chodzi
o coś takiego: std::vector<char>.

    Pozdrawiam
    Piotr Wyderski
Technical Details
Message-ID: <fh4fjd$981$1@news.dialog.net.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mail
References: <fghgeo$spf$1@nemesis.news.tpi.pl> <fghsb4$kpq$1@news.dialog.net.pl> <fgo4c7$mtu$1@news.vectranet.pl> <20071106073039.433f4934@Vorago> <fgqn9m$74j$2@news.vectranet.pl> <618565031.20071107113041@pkierski.net> <fgt6sh$jov$1@news.vectranet.pl> <fgtb6j$nur$1@news.vectranet.pl> <fgv6ba$k14$1@bozon2.softax.pl> <fgvkne$u3b$1@news.vectranet.pl> <fh1tjd$dtt$1@bozon2.softax.pl> <fh206f$2d6$1@news.supermedia.pl> <fh2ma2$rd0$1@news.vectranet.pl> <fh2po8$d0c$1@news.dialog.net.pl> <fh4e03$gnp$1@news.vectranet.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.dialog.net.pl!not-for-mail
From: "Piotr Wyderski" <wyderski@mothers.against.spam-ii.uni.wroc.pl>
Newsgroups: pl.comp.lang.c
Subject: Re: Ciemna strona C++
Date: Sat, 10 Nov 2007 15:35:46 +0100
Organization: Dialog Net
Lines: 28
Message-ID: <fh4fjd$981$1@news.dialog.net.pl>
References: <fghgeo$spf$1@nemesis.news.tpi.pl> <fghsb4$kpq$1@news.dialog.net.pl> <fgo4c7$mtu$1@news.vectranet.pl> <20071106073039.433f4934@Vorago> <fgqn9m$74j$2@news.vectranet.pl> <618565031.20071107113041@pkierski.net> <fgt6sh$jov$1@news.vectranet.pl> <fgtb6j$nur$1@news.vectranet.pl> <fgv6ba$k14$1@bozon2.softax.pl> <fgvkne$u3b$1@news.vectranet.pl> <fh1tjd$dtt$1@bozon2.softax.pl> <fh206f$2d6$1@news.supermedia.pl> <fh2ma2$rd0$1@news.vectranet.pl> <fh2po8$d0c$1@news.dialog.net.pl> <fh4e03$gnp$1@news.vectranet.pl>
NNTP-Posting-Host: xdsl-6381.walbrzych.dialog.net.pl
Mime-Version: 1.0
X-Trace: news.dialog.net.pl 1194705325 9473 87.105.52.237 (10 Nov 2007 14:35:25 GMT)
X-Complaints-To: abuse@dialog.net.pl
NNTP-Posting-Date: Sat, 10 Nov 2007 14:35:25 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-Antivirus: avast! (VPS 071109-0, 2007-11-09), Outbound message
X-Antivirus-Status: Clean
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit