Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.programming > #32468
| Newsgroups | pl.comp.programming |
|---|---|
| Date | 2019-03-23 13:30 -0700 |
| References | <QUOgE.6781$WX2.6137@fx16.fr7> <42388eba-da05-48f0-ad07-2587468ba142@googlegroups.com> <NEqlE.145642$Gr1.106458@fx05.fr7> |
| Message-ID | <b099e30f-4f7b-4e88-9ada-d2324374bc06@googlegroups.com> (permalink) |
| Subject | Re: Dziwny wyciek zasobów |
| From | Wojciech Muła <wojtek.mula@gmail.com> |
On Saturday, March 23, 2019 at 2:37:53 PM UTC+1, Szyk Cech wrote:
> Dzięki!
> Mam jedno pytanie:
>
> > auto closefile = [](FILE* f){fclose(f);};
> > std::unique_ptr<FILE, decltype(closefile)> infile{fopen("path", "r"), closefile};
>
> Czemu w drugiej linii stosujesz nawiasy klamrowe?!? Przecież to nie jest
> ani funkcja ani inicjalizacja tablicy...
Od C++11 można, to się nazywa "uniform initialization": https://en.wikipedia.org/wiki/C%2B%2B11#Uniform_initialization
W ogóle ten kod można jeszcze uprościć, dopiero sam niedawno się tego dowiedziałem. Wystarczy jedna linijka, bez lambdy:
std::unique_ptr<FILE, int(*)(FILE*)> infile{fopen("path", "r"), fclose};
w.
Back to pl.comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Dziwny wyciek zasobów Szyk Cech <szykcech@spoko.pl> - 2019-03-09 14:08 +0100
Re: Dziwny wyciek zasobów Szyk Cech <szykcech@spoko.pl> - 2019-03-09 14:09 +0100
Re: Dziwny wyciek zasobów Wojciech Muła <wojtek.mula@gmail.com> - 2019-03-10 13:38 -0700
Re: Dziwny wyciek zasobów Szyk Cech <szykcech@spoko.pl> - 2019-03-23 14:37 +0100
Re: Dziwny wyciek zasobów Wojciech Muła <wojtek.mula@gmail.com> - 2019-03-23 13:30 -0700
Re: Dziwny wyciek zasobów Borneq <borneq@antyspam.hidden.pl> - 2019-03-23 21:49 +0100
Re: Dziwny wyciek zasobów Wojciech Muła <wojtek.mula@gmail.com> - 2019-03-25 15:13 -0700
Re: Dziwny wyciek zasobów Szyk Cech <szykcech@spoko.pl> - 2019-03-24 11:55 +0100
csiph-web