Thread View: pl.comp.lang.c
8 messages
8 total messages
Started by szykcech
Sat, 28 Jan 2017 19:50
const wchar_t* lPathWchar2 = L"c:\\*"; // czy coś takiego usuwać delete?!?
Author: szykcech
Date: Sat, 28 Jan 2017 19:50
Date: Sat, 28 Jan 2017 19:50
12 lines
1822 bytes
1822 bytes
Witam Mam ciąg znaków zdeklarowany lokalnie (na stosie) w ten sposób: const wchar_t* lPathWchar2 = L"c:\\*"; I mam pytanie: Czy należy to usuwać operatorem delete? Bo przecież deklaruję sam wskaźnik i potem już nie wiadomo co to za wskaźnik? Więc chyba trzeba go potraktować delete [] lPathWchar2; A może kompilator jest tak sprytny, że może sobie dojść co było pod tym wskaźnikiem const i to usunąć. tylko co w takiej sytuacji: const wchar_t* lPathWchar3 = lPathWchar2; Usuwane to było by podwójnie (jeśli by polegać na sprycie kompilatora). z góry dzięki, pozdrawia Szyk Cech
Re: const wchar_t* lPathWchar2 = L"c:\\*"; // czy coś takiego usuwać delete?!?
Author: Borneq
Date: Sat, 28 Jan 2017 20:31
Date: Sat, 28 Jan 2017 20:31
8 lines
1351 bytes
1351 bytes
W dniu 28.01.2017 o 20:50, szykcech@gmail.com pisze: > Witam > Mam ciąg znaków zdeklarowany lokalnie (na stosie) w ten sposób: > const wchar_t* lPathWchar2 = L"c:\\*"; > I mam pytanie: > Czy należy to usuwać operatorem delete? Bo przecież deklaruję sam wskaźnik i potem już nie wiadomo co to za wskaźnik? Więc chyba trzeba go potraktować Nie należy usuwać
Re: const wchar_t* lPathWchar2 = L"c:\\*"; // czy coś takiego usuwać delete?!?
Author: Borneq
Date: Sun, 29 Jan 2017 08:02
Date: Sun, 29 Jan 2017 08:02
13 lines
1425 bytes
1425 bytes
W dniu 28.01.2017 o 21:31, Borneq pisze: >> Czy należy to usuwać operatorem delete? Bo przecież deklaruję sam >> wskaźnik i potem już nie wiadomo co to za wskaźnik? Więc chyba trzeba >> go potraktować > > Nie należy usuwać > To podobnie jakbyś miał int a; a potem int *pa; o przypisał: pa = &a; Generalna zasada zwalniamy to co przydzieliliśmy w C mallokiem i jego odmianami a w C++ przy pomocy new
Re: const wchar_t* lPathWchar2 = L"c:\\*"; // czy coś takiego usuwać delete?!?
Author: szykcech
Date: Tue, 31 Jan 2017 17:01
Date: Tue, 31 Jan 2017 17:01
5 lines
1731 bytes
1731 bytes
Czyli wg Ciebie kompilator rozróżnia takie sytuacje: char* lZmienna1 = "Jakiś string."; char* lZmienna2 = new char[20]; Ciekawe jak? Skoro później używa się ich jednakowo...
Re: const wchar_t* lPathWchar2 = L"c:\\*"; // czy coś takiego usuwać delete?!?
Author: Borneq
Date: Tue, 31 Jan 2017 17:40
Date: Tue, 31 Jan 2017 17:40
8 lines
1410 bytes
1410 bytes
W dniu 31.01.2017 o 18:01, szykcech@gmail.com pisze: > Czyli wg Ciebie kompilator rozróżnia takie sytuacje: > char* lZmienna1 = "Jakiś string."; > char* lZmienna2 = new char[20]; > > Ciekawe jak? Skoro później używa się ich jednakowo... > i dlatego kompilator sam nie może decydować o zwalnianiu
Re: const wchar_t* lPathWchar2 = L"c:\\*"; // czy coś takiego usuwać delete?!?
Author: Przemek Biernat
Date: Tue, 25 Apr 2017 00:44
Date: Tue, 25 Apr 2017 00:44
1 lines
1649 bytes
1649 bytes
Ludzie przecież ten łańcuch jest wkompilowany w exe lub lib czy dll. Co wy chcecie zwalniać - kod wykonywany
Re: const wchar_t* lPathWchar2 = L"c:\\*"; // czy coś takiego usuwać delete?!?
Author: slawek
Date: Tue, 25 Apr 2017 13:56
Date: Tue, 25 Apr 2017 13:56
12 lines
1989 bytes
1989 bytes
On Mon, 24 Apr 2017 17:44:21 -0700 (PDT), Przemek Biernat <biernat.przemyslaw@gmail.com> wrote: > Ludzie przecież ten łańcuch jest wkompilowany w exe lub lib = > czy dll. Co wy chcecie zwalniać - kod wykonywany A z ciekawości: dlaczego nie spróbować? I nabyć doświadczenia w temacie. Przecież sprawdzenie tego to jakieś 10 minut roboty... zrobić hello Word, dać delete, kaboom. Anyway, nie jestem pewien czy standard zakłada trafienie takich łańcuchów gdziekolwiek. Teoretycznie, jeżeli będzie niepotrzebny, to może zostać zanikniety w optymalizacji.
Re: const wchar_t* lPathWchar2 = L"c:\\*"; // czy coś takiego usuwać delete?!?
Author: Ghost
Date: Sat, 29 Apr 2017 11:10
Date: Sat, 29 Apr 2017 11:10
9 lines
1739 bytes
1739 bytes
Użytkownik "Przemek Biernat" napisał w wiadomości grup dyskusyjnych:43755d30-8a45-4687-930f-3c5f14a4abc2@googlegroups.com... >Ludzie przecież ten łańcuch jest wkompilowany w exe lub lib czy dll. Co wy >chcecie zwalniać - kod wykonywany No zawsze to troche pamięci.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads