eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingCiekawy problem iteracyjnego zwalniania głębokiego drzewaRe: Ciekawy problem iteracyjnego zwalniania głębokiego drzewa
  • X-Received: by 10.31.151.77 with SMTP id z74mr15104vkd.3.1502892397740; Wed, 16 Aug
    2017 07:06:37 -0700 (PDT)
    X-Received: by 10.31.151.77 with SMTP id z74mr15104vkd.3.1502892397740; Wed, 16 Aug
    2017 07:06:37 -0700 (PDT)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
    0.net!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.
    iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!border2.nntp.dca1.giganew
    s.com!nntp.giganews.com!m34no390561iti.0!news-out.google.com!i9ni1485qte.0!nntp
    .google.com!s6no416086qtc.1!postnews.google.com!glegroupsg2000goo.googlegroups.
    com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Wed, 16 Aug 2017 07:06:37 -0700 (PDT)
    In-Reply-To: <on1ibv$9ht$1@node2.news.atman.pl>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=89.70.120.200;
    posting-account=CvUQzQoAAABvVQmR58QmR6N4Cev1qhAS
    NNTP-Posting-Host: 89.70.120.200
    References: <oms9l6$db4$1@node2.news.atman.pl>
    <f...@g...com>
    <on1ibv$9ht$1@node2.news.atman.pl>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <b...@g...com>
    Subject: Re: Ciekawy problem iteracyjnego zwalniania głębokiego drzewa
    From: bartekltg <b...@g...com>
    Injection-Date: Wed, 16 Aug 2017 14:06:37 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    Lines: 32
    Xref: news-archive.icm.edu.pl pl.comp.programming:211117
    [ ukryj nagłówki ]

    On Wednesday, August 16, 2017 at 3:46:41 PM UTC+2, Borneq wrote:
    > W dniu 16.08.2017 o 02:52, bartekltg pisze:
    > > unique_ptr<Node> root;
    > > while (i<vec.size()) {
    > > move(vec[i]->children.begin(),vec[i]->children.end()
    , std::back_inserter(vec) );
    > > cout<<"przenosiny dzieci "<<i<<": "<<vec[i]->data<<endl;
    > > i++;
    > > }
    >
    > a gdyby nie było unique_ptr? albo było shared_ptr?


    "A gdyby nie słoń?"

    Jakby zbudować drzewo inaczej, trzeba by zrobić jego kasowanie inaczej;-)
    Jak, zależy od tego, jak to drzewo budujesz. Co robić na gołych wskaźnikach
    masz w każdym podręczniku:)
    Chocby robisz recznie rekurencyjnie: w procedurze usuwania usuwasz
    dzieci, a potem to, na co wskazujesz. jest to odkładnie to, co automatycznie
    robi unique_ptr, wiec ma ten sam "problem" ze stosem/

    unique_ptr są o tyle lepsze, że kasowanie masz za darmo i ciezko
    zrobić wyciek, a nie dają nakładu
    Shared_ptr to liczenie referencji, do drzew niepotrzebnie i relatywnie
    kosztowne.

    pzdr
    bartekltg

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: